Merge branch 'upcoming' into disablefollowersbydefault
@ -23,9 +23,10 @@ body:
|
|||||||
label: Version
|
label: Version
|
||||||
description: What version of pokeemerald-expansion are you using as a base?
|
description: What version of pokeemerald-expansion are you using as a base?
|
||||||
options:
|
options:
|
||||||
- 1.8.4 (Latest release)
|
- 1.8.5 (Latest release)
|
||||||
- master (default, unreleased bugfixes)
|
- master (default, unreleased bugfixes)
|
||||||
- upcoming (Edge)
|
- upcoming (Edge)
|
||||||
|
- 1.8.4
|
||||||
- 1.8.3
|
- 1.8.3
|
||||||
- 1.8.2
|
- 1.8.2
|
||||||
- 1.8.1
|
- 1.8.1
|
||||||
|
|||||||
@ -23,10 +23,12 @@ body:
|
|||||||
label: Version
|
label: Version
|
||||||
description: What version of pokeemerald-expansion are you using as a base?
|
description: What version of pokeemerald-expansion are you using as a base?
|
||||||
options:
|
options:
|
||||||
- 1.8.4 (Latest release)
|
- 1.8.5 (Latest release)
|
||||||
- master (default, unreleased bugfixes)
|
- master (default, unreleased bugfixes)
|
||||||
- upcoming (Edge)
|
- upcoming (Edge)
|
||||||
|
- 1.8.4
|
||||||
- 1.8.3
|
- 1.8.3
|
||||||
|
- 1.8.2
|
||||||
- 1.8.1
|
- 1.8.1
|
||||||
- 1.8.0
|
- 1.8.0
|
||||||
- 1.7.4
|
- 1.7.4
|
||||||
|
|||||||
4
.github/ISSUE_TEMPLATE/04_other_errors.yaml
vendored
@ -23,10 +23,12 @@ body:
|
|||||||
label: Version
|
label: Version
|
||||||
description: What version of pokeemerald-expansion are you using as a base?
|
description: What version of pokeemerald-expansion are you using as a base?
|
||||||
options:
|
options:
|
||||||
- 1.8.4 (Latest release)
|
- 1.8.5 (Latest release)
|
||||||
- master (default, unreleased bugfixes)
|
- master (default, unreleased bugfixes)
|
||||||
- upcoming (Edge)
|
- upcoming (Edge)
|
||||||
|
- 1.8.4
|
||||||
- 1.8.3
|
- 1.8.3
|
||||||
|
- 1.8.2
|
||||||
- 1.8.1
|
- 1.8.1
|
||||||
- 1.8.0
|
- 1.8.0
|
||||||
- 1.7.4
|
- 1.7.4
|
||||||
|
|||||||
48
.github/workflows/docs.yml
vendored
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
name: Docs
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
deploy:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
permissions:
|
||||||
|
contents: write
|
||||||
|
pages: write
|
||||||
|
id-token: write
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
- name: Install latest mdbook
|
||||||
|
run: |
|
||||||
|
tag=$(curl 'https://api.github.com/repos/rust-lang/mdbook/releases/latest' | jq -r '.tag_name')
|
||||||
|
url="https://github.com/rust-lang/mdbook/releases/download/${tag}/mdbook-${tag}-x86_64-unknown-linux-gnu.tar.gz"
|
||||||
|
mkdir mdbook
|
||||||
|
curl -sSL $url | tar -xz --directory=./mdbook
|
||||||
|
echo `pwd`/mdbook >> $GITHUB_PATH
|
||||||
|
- name: Build Book
|
||||||
|
run: |
|
||||||
|
cd docs
|
||||||
|
mdbook build
|
||||||
|
- name: Check if Pages is enabled
|
||||||
|
uses: octokit/request-action@v2.x
|
||||||
|
id: check_pages
|
||||||
|
continue-on-error: true
|
||||||
|
with:
|
||||||
|
route: GET /repos/{repo}/pages
|
||||||
|
repo: ${{ github.repository }}
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
- name: Setup Pages
|
||||||
|
uses: actions/configure-pages@v4
|
||||||
|
if: steps.check_pages.outcome == 'success'
|
||||||
|
- name: Upload artifact
|
||||||
|
uses: actions/upload-pages-artifact@v3
|
||||||
|
with:
|
||||||
|
path: 'docs/book'
|
||||||
|
- name: Deploy to GitHub Pages
|
||||||
|
id: deployment
|
||||||
|
uses: actions/deploy-pages@v4
|
||||||
|
if: steps.check_pages.outcome == 'success'
|
||||||
55
CHANGELOG.md
@ -1,48 +1,49 @@
|
|||||||
# Pokeemerald-Expansion Changelogs
|
# Pokeemerald-Expansion Changelogs
|
||||||
|
|
||||||
## 1.8.x
|
## 1.8.x
|
||||||
- ### [Version 1.8.4](docs/changelogs/1.8.x/1.8.4.md) - Bugfix Release 🧹
|
- **[Version 1.8.5](docs/changelogs/1.8.x/1.8.5.md) - 🧹 Bugfix Release**
|
||||||
- ### [Version 1.8.3](docs/changelogs/1.8.x/1.8.3.md) - Bugfix Release 🧹
|
- **[Version 1.8.4](docs/changelogs/1.8.x/1.8.4.md) - 🧹 Bugfix Release**
|
||||||
- ### [Version 1.8.2](docs/changelogs/1.8.x/1.8.2.md) - Bugfix Release 🧹
|
- **[Version 1.8.3](docs/changelogs/1.8.x/1.8.3.md) - 🧹 Bugfix Release**
|
||||||
- ### [Version 1.8.1](docs/changelogs/1.8.x/1.8.1.md) - HOTFIX Release 🔥
|
- **[Version 1.8.2](docs/changelogs/1.8.x/1.8.2.md) - 🧹 Bugfix Release**
|
||||||
- ### [Version 1.8.0](docs/changelogs/1.8.x/1.8.0.md) - Feature Release ✨
|
- **[Version 1.8.1](docs/changelogs/1.8.x/1.8.1.md) - 🔥 HOTFIX Release**
|
||||||
|
- **[Version 1.8.0](docs/changelogs/1.8.x/1.8.0.md) - ✨ Feature Release**
|
||||||
|
|
||||||
## 1.7.x
|
## 1.7.x
|
||||||
- ### [Version 1.7.4](docs/changelogs/1.7.x/1.7.4.md) - Bugfix Release 🧹
|
- **[Version 1.7.4](docs/changelogs/1.7.x/1.7.4.md) - 🧹 Bugfix Release**
|
||||||
- ### [Version 1.7.3](docs/changelogs/1.7.x/1.7.3.md) - Bugfix Release 🧹
|
- **[Version 1.7.3](docs/changelogs/1.7.x/1.7.3.md) - 🧹 Bugfix Release**
|
||||||
- ### [Version 1.7.2](docs/changelogs/1.7.x/1.7.2.md) - Bugfix Release 🧹
|
- **[Version 1.7.2](docs/changelogs/1.7.x/1.7.2.md) - 🧹 Bugfix Release**
|
||||||
- ### [Version 1.7.1](docs/changelogs/1.7.x/1.7.1.md) - Bugfix Release 🧹
|
- **[Version 1.7.1](docs/changelogs/1.7.x/1.7.1.md) - 🧹 Bugfix Release**
|
||||||
- ### [Version 1.7.0](docs/changelogs/1.7.x/1.7.0.md) - Feature Release ✨
|
- **[Version 1.7.0](docs/changelogs/1.7.x/1.7.0.md) - ✨ Feature Release**
|
||||||
|
|
||||||
## 1.6.x
|
## 1.6.x
|
||||||
- ### [Version 1.6.2](docs/changelogs/1.6.x/1.6.2.md) - Bugfix Release 🧹
|
- **[Version 1.6.2](docs/changelogs/1.6.x/1.6.2.md) - 🧹 Bugfix Release**
|
||||||
- ### [Version 1.6.1](docs/changelogs/1.6.x/1.6.1.md) - HOTFIX Release 🔥
|
- **[Version 1.6.1](docs/changelogs/1.6.x/1.6.1.md) - 🔥 HOTFIX Release**
|
||||||
- ### [Version 1.6.0](docs/changelogs/1.6.x/1.6.0.md) - Feature Release ✨
|
- **[Version 1.6.0](docs/changelogs/1.6.x/1.6.0.md) - ✨ Feature Release**
|
||||||
|
|
||||||
## 1.5.x
|
## 1.5.x
|
||||||
- ### [Version 1.5.3](docs/changelogs/1.5.x/1.5.3.md) - HOTFIX Release 🔥
|
- **[Version 1.5.3](docs/changelogs/1.5.x/1.5.3.md) - 🔥 HOTFIX Release**
|
||||||
- ### [Version 1.5.2](docs/changelogs/1.5.x/1.5.2.md) - Bugfix Release 🧹
|
- **[Version 1.5.2](docs/changelogs/1.5.x/1.5.2.md) - 🧹 Bugfix Release**
|
||||||
- ### [Version 1.5.1](docs/changelogs/1.5.x/1.5.1.md) - Bugfix Release 🧹
|
- **[Version 1.5.1](docs/changelogs/1.5.x/1.5.1.md) - 🧹 Bugfix Release**
|
||||||
- ### [Version 1.5.0](docs/changelogs/1.5.x/1.5.0.md) - Feature Release ✨
|
- **[Version 1.5.0](docs/changelogs/1.5.x/1.5.0.md) - ✨ Feature Release**
|
||||||
|
|
||||||
## 1.4.x
|
## 1.4.x
|
||||||
- ### [Version 1.4.3](docs/changelogs/1.4.x/1.4.3.md) - Bugfix Release 🧹
|
- **[Version 1.4.3](docs/changelogs/1.4.x/1.4.3.md) - 🧹 Bugfix Release**
|
||||||
- ### [Version 1.4.2](docs/changelogs/1.4.x/1.4.2.md) - Bugfix Release 🧹
|
- **[Version 1.4.2](docs/changelogs/1.4.x/1.4.2.md) - 🧹 Bugfix Release**
|
||||||
- ### [Version 1.4.1](docs/changelogs/1.4.x/1.4.1.md) - HOTFIX Release 🔥
|
- **[Version 1.4.1](docs/changelogs/1.4.x/1.4.1.md) - 🔥 HOTFIX Release**
|
||||||
- ### [Version 1.4.0](docs/changelogs/1.4.x/1.4.0.md) - Feature Release ✨
|
- **[Version 1.4.0](docs/changelogs/1.4.x/1.4.0.md) - ✨ Feature Release**
|
||||||
|
|
||||||
## 1.3.x
|
## 1.3.x
|
||||||
- ### [Version 1.3.0](docs/changelogs/1.3.x/1.3.0.md) - Feature Release ✨
|
- **[Version 1.3.0](docs/changelogs/1.3.x/1.3.0.md) - ✨ Feature Release**
|
||||||
|
|
||||||
## 1.2.x
|
## 1.2.x
|
||||||
- ### [Version 1.2.0](docs/changelogs/1.2.x/1.2.0.md) - Feature Release ✨
|
- **[Version 1.2.0](docs/changelogs/1.2.x/1.2.0.md) - ✨ Feature Release**
|
||||||
|
|
||||||
## 1.1.x
|
## 1.1.x
|
||||||
- ### [Version 1.1.1](docs/changelogs/1.1.x/1.1.1.md) - Bugfix Release 🧹
|
- **[Version 1.1.1](docs/changelogs/1.1.x/1.1.1.md) - 🧹 Bugfix Release**
|
||||||
- ### [Version 1.1.0](docs/changelogs/1.1.x/1.1.0.md) - Feature Release ✨
|
- **[Version 1.1.0](docs/changelogs/1.1.x/1.1.0.md) - ✨ Feature Release**
|
||||||
|
|
||||||
## 1.0.x
|
## 1.0.x
|
||||||
- ### [Version 1.0.0](docs/changelogs/1.0.x/1.0.0.md) - Feature Release ✨
|
- **[Version 1.0.0](docs/changelogs/1.0.x/1.0.0.md) - ✨ Feature Release**
|
||||||
|
|
||||||
## Pre-1.0.x:
|
## Pre-1.0.x:
|
||||||
- ### [Version 0.9.0](docs/changelogs/0.9.x/0.9.0.md) - Retroactive Version 🦕
|
- **[Version 0.9.0](docs/changelogs/0.9.x/0.9.0.md) - 🦕 Retroactive Version**
|
||||||
|
|||||||
35
INSTALL.md
@ -215,9 +215,9 @@ Note that in msys2, Copy is Ctrl+Insert and Paste is Shift+Insert.
|
|||||||
|
|
||||||
To install Python on msys2, simply run the following commands:
|
To install Python on msys2, simply run the following commands:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pacman -S mingw-w64-x86_64-python3
|
pacman -S mingw-w64-x86_64-python3
|
||||||
```
|
```
|
||||||
|
|
||||||
Python is now installed.
|
Python is now installed.
|
||||||
|
|
||||||
@ -475,6 +475,20 @@ devkitARM is now installed.
|
|||||||
|
|
||||||
Then proceed to [Choosing where to store pokeemerald Expansion (Linux)](#choosing-where-to-store-pokeemerald-expansion-linux).
|
Then proceed to [Choosing where to store pokeemerald Expansion (Linux)](#choosing-where-to-store-pokeemerald-expansion-linux).
|
||||||
|
|
||||||
|
### NixOS
|
||||||
|
Run the following command to start an interactive shell with the necessary packages:
|
||||||
|
```bash
|
||||||
|
nix-shell -p pkgsCross.arm-embedded.stdenv.cc git pkg-config libpng
|
||||||
|
```
|
||||||
|
Then proceed to [Choosing where to store pokeemerald Expansion (Linux)](#choosing-where-to-store-pokeemerald-expansion-linux).
|
||||||
|
|
||||||
|
### NixOS
|
||||||
|
Run the following command to start an interactive shell with the necessary packages:
|
||||||
|
```bash
|
||||||
|
nix-shell -p pkgsCross.arm-embedded.stdenv.cc git pkg-config libpng
|
||||||
|
```
|
||||||
|
Then proceed to [Choosing where to store pokeemerald Expansion (Linux)](#choosing-where-to-store-pokeemerald-expansion-linux).
|
||||||
|
|
||||||
### Other distributions
|
### Other distributions
|
||||||
_(Specific instructions for other distributions would be greatly appreciated!)_
|
_(Specific instructions for other distributions would be greatly appreciated!)_
|
||||||
|
|
||||||
@ -592,7 +606,8 @@ Note that this is not necessary for a non-modern (agbcc) build since those are b
|
|||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary><i>Deprecated; installing agbcc is optional since 1.7.0</i>.</summary>
|
<summary><i>Deprecated; installing agbcc is optional since 1.7.0</i>.</summary>
|
||||||
2. Install agbcc into pokeemerald-expansion. The commands to run depend on certain conditions. **You should only follow one of the listed instructions**:
|
|
||||||
|
1. Install agbcc into pokeemerald-expansion. 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 Expansion, run the following commands to build and install it into pokeemerald-expansion:
|
- If agbcc has **not been built before** in the folder where you chose to store pokeemerald Expansion, run the following commands to build and install it into pokeemerald-expansion:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@ -621,18 +636,20 @@ Note that this is not necessary for a non-modern (agbcc) build since those are b
|
|||||||
<details>
|
<details>
|
||||||
<summary><i>Note...</i></summary>
|
<summary><i>Note...</i></summary>
|
||||||
|
|
||||||
> 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.
|
> 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.
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
3. Once agbcc is installed, change directory back to the base directory where pokeemerald-expansion and agbcc are stored:
|
2. Once agbcc is installed, change directory back to the base directory where pokeemerald-expansion and agbcc are stored:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd ..
|
cd ..
|
||||||
```
|
```
|
||||||
|
|
||||||
4. To compile with agbcc:
|
|
||||||
|
|
||||||
```make agbcc```
|
3. To compile with agbcc:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
make agbcc
|
||||||
|
```
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
|
|||||||
15
Makefile
@ -80,16 +80,19 @@ MODERN_ELF_NAME := $(MODERN_ROM_NAME:.gba=.elf)
|
|||||||
MODERN_MAP_NAME := $(MODERN_ROM_NAME:.gba=.map)
|
MODERN_MAP_NAME := $(MODERN_ROM_NAME:.gba=.map)
|
||||||
MODERN_OBJ_DIR_NAME := build/modern
|
MODERN_OBJ_DIR_NAME := build/modern
|
||||||
|
|
||||||
SHELL := /bin/bash -o pipefail
|
SHELL := bash -o pipefail
|
||||||
|
|
||||||
ELF = $(ROM:.gba=.elf)
|
ELF = $(ROM:.gba=.elf)
|
||||||
MAP = $(ROM:.gba=.map)
|
MAP = $(ROM:.gba=.map)
|
||||||
SYM = $(ROM:.gba=.sym)
|
SYM = $(ROM:.gba=.sym)
|
||||||
|
|
||||||
|
TEST_OBJ_DIR_NAME_MODERN := build/modern-test
|
||||||
|
TEST_OBJ_DIR_NAME_AGBCC := build/test
|
||||||
|
|
||||||
ifeq ($(MODERN),0)
|
ifeq ($(MODERN),0)
|
||||||
TEST_OBJ_DIR_NAME := build/test
|
TEST_OBJ_DIR_NAME := $(TEST_OBJ_DIR_NAME_AGBCC)
|
||||||
else
|
else
|
||||||
TEST_OBJ_DIR_NAME := build/modern-test
|
TEST_OBJ_DIR_NAME := $(TEST_OBJ_DIR_NAME_MODERN)
|
||||||
endif
|
endif
|
||||||
TESTELF = $(ROM:.gba=-test.elf)
|
TESTELF = $(ROM:.gba=-test.elf)
|
||||||
HEADLESSELF = $(ROM:.gba=-test-headless.elf)
|
HEADLESSELF = $(ROM:.gba=-test-headless.elf)
|
||||||
@ -293,7 +296,7 @@ mostlyclean: tidynonmodern tidymodern tidycheck
|
|||||||
rm -f $(MID_SUBDIR)/*.s
|
rm -f $(MID_SUBDIR)/*.s
|
||||||
find . \( -iname '*.1bpp' -o -iname '*.4bpp' -o -iname '*.8bpp' -o -iname '*.gbapal' -o -iname '*.lz' -o -iname '*.rl' -o -iname '*.latfont' -o -iname '*.hwjpnfont' -o -iname '*.fwjpnfont' \) -exec rm {} +
|
find . \( -iname '*.1bpp' -o -iname '*.4bpp' -o -iname '*.8bpp' -o -iname '*.gbapal' -o -iname '*.lz' -o -iname '*.rl' -o -iname '*.latfont' -o -iname '*.hwjpnfont' -o -iname '*.fwjpnfont' \) -exec rm {} +
|
||||||
rm -f $(DATA_ASM_SUBDIR)/layouts/layouts.inc $(DATA_ASM_SUBDIR)/layouts/layouts_table.inc
|
rm -f $(DATA_ASM_SUBDIR)/layouts/layouts.inc $(DATA_ASM_SUBDIR)/layouts/layouts_table.inc
|
||||||
rm -f $(DATA_ASM_SUBDIR)/maps/connections.inc $(DATA_ASM_SUBDIR)/maps/events.inc $(DATA_ASM_SUBDIR)/maps/groups.inc $(DATA_ASM_SUBDIR)/maps/headers.inc
|
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 $(DATA_SRC_SUBDIR)/map_group_count.h
|
||||||
find $(DATA_ASM_SUBDIR)/maps \( -iname 'connections.inc' -o -iname 'events.inc' -o -iname 'header.inc' \) -exec rm {} +
|
find $(DATA_ASM_SUBDIR)/maps \( -iname 'connections.inc' -o -iname 'events.inc' -o -iname 'header.inc' \) -exec rm {} +
|
||||||
rm -f $(AUTO_GEN_TARGETS)
|
rm -f $(AUTO_GEN_TARGETS)
|
||||||
@$(MAKE) clean -C libagbsyscall
|
@$(MAKE) clean -C libagbsyscall
|
||||||
@ -310,7 +313,9 @@ tidymodern:
|
|||||||
|
|
||||||
tidycheck:
|
tidycheck:
|
||||||
rm -f $(TESTELF) $(HEADLESSELF)
|
rm -f $(TESTELF) $(HEADLESSELF)
|
||||||
rm -rf $(TEST_OBJ_DIR_NAME)
|
rm -rf $(TEST_OBJ_DIR_NAME_MODERN)
|
||||||
|
rm -rf $(TEST_OBJ_DIR_NAME_AGBCC)
|
||||||
|
|
||||||
|
|
||||||
ifneq ($(MODERN),0)
|
ifneq ($(MODERN),0)
|
||||||
$(C_BUILDDIR)/berry_crush.o: override CFLAGS += -Wno-address-of-packed-member
|
$(C_BUILDDIR)/berry_crush.o: override CFLAGS += -Wno-address-of-packed-member
|
||||||
|
|||||||
24
README.md
@ -14,11 +14,11 @@ Based off RHH's pokeemerald-expansion v1.8.0 https://github.com/rh-hideout/pokee
|
|||||||
|
|
||||||
## What features are included?
|
## What features are included?
|
||||||
- ***IMPORTANT*❗❗ Read through these to learn what features you can toggle**:
|
- ***IMPORTANT*❗❗ Read through these to learn what features you can toggle**:
|
||||||
- [Battle configurations](include/config/battle.h)
|
- [Battle configurations](https://github.com/rh-hideout/pokeemerald-expansion/blob/master/include/config/battle.h)
|
||||||
- [Pokémon configurations](include/config/pokemon.h)
|
- [Pokémon configurations](https://github.com/rh-hideout/pokeemerald-expansion/blob/master/include/config/pokemon.h)
|
||||||
- [Item configurations](include/config/item.h)
|
- [Item configurations](https://github.com/rh-hideout/pokeemerald-expansion/blob/master/include/config/item.h)
|
||||||
- [Overworld configurations](include/config/overworld.h)
|
- [Overworld configurations](https://github.com/rh-hideout/pokeemerald-expansion/blob/master/include/config/overworld.h)
|
||||||
- [Debug configurations](include/config/debug.h)
|
- [Debug configurations](https://github.com/rh-hideout/pokeemerald-expansion/blob/master/include/config/debug.h)
|
||||||
- ***Upgraded battle engine.***
|
- ***Upgraded battle engine.***
|
||||||
- Gen5+ damage calculation.
|
- Gen5+ damage calculation.
|
||||||
- 2v2 Wild battles support.
|
- 2v2 Wild battles support.
|
||||||
@ -62,7 +62,7 @@ Based off RHH's pokeemerald-expansion v1.8.0 https://github.com/rh-hideout/pokee
|
|||||||
- Recalculating stats at the end of every battle.
|
- Recalculating stats at the end of every battle.
|
||||||
- Level 100 Pokémon can earn EVs.
|
- Level 100 Pokémon can earn EVs.
|
||||||
- Inverse battle support.
|
- Inverse battle support.
|
||||||
- TONS of other features listed [here](include/config/battle.h).
|
- TONS of other features listed [here](https://github.com/rh-hideout/pokeemerald-expansion/blob/master/include/config/battle.h).
|
||||||
- ***Full Trainer customization***
|
- ***Full Trainer customization***
|
||||||
- Nickname, EVs, IVs, moves, ability, ball, friendship, nature, gender, shininess.
|
- Nickname, EVs, IVs, moves, ability, ball, friendship, nature, gender, shininess.
|
||||||
- Custom tag battle support (teaming up an NPC in a double battle).
|
- Custom tag battle support (teaming up an NPC in a double battle).
|
||||||
@ -94,7 +94,7 @@ Based off RHH's pokeemerald-expansion v1.8.0 https://github.com/rh-hideout/pokee
|
|||||||
- All gender differences.
|
- All gender differences.
|
||||||
- Custom female icons for female Hippopotas Hippowdon, Pikachu and Wobbufett
|
- Custom female icons for female Hippopotas Hippowdon, Pikachu and Wobbufett
|
||||||
- 3 Perfect IVs on Legendaries, Mythicals and Ultra Beasts.
|
- 3 Perfect IVs on Legendaries, Mythicals and Ultra Beasts.
|
||||||
- ***Customizable form change tables. Full list of methods [here](include/constants/form_change_types.h).***
|
- ***Customizable form change tables. Full list of methods [here](https://github.com/rh-hideout/pokeemerald-expansion/blob/master/include/constants/form_change_types.h).***
|
||||||
- Item holding (eg. Giratina/Arceus)
|
- Item holding (eg. Giratina/Arceus)
|
||||||
- Item using (eg. Oricorio)
|
- Item using (eg. Oricorio)
|
||||||
- Time of day option for Shaymin
|
- Time of day option for Shaymin
|
||||||
@ -115,7 +115,7 @@ Based off RHH's pokeemerald-expansion v1.8.0 https://github.com/rh-hideout/pokee
|
|||||||
- Egg Move Transfer, including Mirror Herb (configurable).
|
- Egg Move Transfer, including Mirror Herb (configurable).
|
||||||
- Nature inheriting 100% of the time with Everstone (configurable)
|
- Nature inheriting 100% of the time with Everstone (configurable)
|
||||||
- Gen6+ Ability inheriting (configurable).
|
- Gen6+ Ability inheriting (configurable).
|
||||||
- ***Items from newer Generations. Full list [here](include/constants/items.h).***
|
- ***Items from newer Generations. Full list [here](https://github.com/rh-hideout/pokeemerald-expansion/blob/master/include/constants/items.h).***
|
||||||
- ***Gen 6+ Exp. Share*** (configurable)
|
- ***Gen 6+ Exp. Share*** (configurable)
|
||||||
- Berserk Gene
|
- Berserk Gene
|
||||||
- Most battle items from Gen 4+
|
- Most battle items from Gen 4+
|
||||||
@ -141,6 +141,14 @@ Based off RHH's pokeemerald-expansion v1.8.0 https://github.com/rh-hideout/pokee
|
|||||||
- [Nature Colors](https://github.com/DizzyEggg/pokeemerald/tree/nature_color) in summary screen by @DizzyEggg
|
- [Nature Colors](https://github.com/DizzyEggg/pokeemerald/tree/nature_color) in summary screen by @DizzyEggg
|
||||||
- [Dynamic Multichoice](https://github.com/SBird1337/pokeemerald/tree/feature/dynmulti) by @SBird1337
|
- [Dynamic Multichoice](https://github.com/SBird1337/pokeemerald/tree/feature/dynmulti) by @SBird1337
|
||||||
- [Saveblock Cleansing](https://github.com/ghoulslash/pokeemerald/tree/saveblock) by @ghoulslash
|
- [Saveblock Cleansing](https://github.com/ghoulslash/pokeemerald/tree/saveblock) by @ghoulslash
|
||||||
|
- [Followers & Expanded IDs](https://github.com/aarant/pokeemerald/tree/followers-expanded-id) by @aarant
|
||||||
|
- May be disabled.
|
||||||
|
- Includes Pokémon followers like in HGSS, including interactions.
|
||||||
|
- ***Expands the amount of possible object event IDs beyond 255.***
|
||||||
|
- ***Includes an implementation of dynamic overworld palettes (DOWP).***
|
||||||
|
- **Additional features**:
|
||||||
|
- *Pokémon overworld sprites up to Generation 8.*
|
||||||
|
- *Integration with our Pokémon Sprite Visualizer, allowing users to browse through the follower sprites alongside battle sprites.*
|
||||||
- ***Other features***
|
- ***Other features***
|
||||||
- Pressing B while holding a Pokémon drops them like in modern games (configurable).
|
- Pressing B while holding a Pokémon drops them like in modern games (configurable).
|
||||||
- Running indoors (configurable).
|
- Running indoors (configurable).
|
||||||
|
|||||||
@ -98,7 +98,7 @@
|
|||||||
waitstate
|
waitstate
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro multi_do type:req, partnerId:req, partnerPicId:req
|
.macro multi_do type:req, partnerId:req
|
||||||
special ReducePlayerPartyToSelectedMons
|
special ReducePlayerPartyToSelectedMons
|
||||||
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_SET_DATA
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_SET_DATA
|
||||||
setvar VAR_0x8005, FRONTIER_DATA_SELECTED_MON_ORDER
|
setvar VAR_0x8005, FRONTIER_DATA_SELECTED_MON_ORDER
|
||||||
@ -106,7 +106,6 @@
|
|||||||
setvar VAR_0x8004, SPECIAL_BATTLE_MULTI
|
setvar VAR_0x8004, SPECIAL_BATTLE_MULTI
|
||||||
setvar VAR_0x8005, \type | MULTI_BATTLE_CHOOSE_MONS
|
setvar VAR_0x8005, \type | MULTI_BATTLE_CHOOSE_MONS
|
||||||
setvar VAR_0x8006, \partnerId
|
setvar VAR_0x8006, \partnerId
|
||||||
setvar VAR_0x8007, \partnerPicId
|
|
||||||
special DoSpecialTrainerBattle
|
special DoSpecialTrainerBattle
|
||||||
waitstate
|
waitstate
|
||||||
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_SAVE_PARTY
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_SAVE_PARTY
|
||||||
@ -114,30 +113,29 @@
|
|||||||
special LoadPlayerParty
|
special LoadPlayerParty
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro multi_2_vs_2 trainer1Id:req, trainer1LoseText:req, trainer2Id:req, trainer2LoseText:req, partnerId:req, partnerPicId:req
|
.macro multi_2_vs_2 trainer1Id:req, trainer1LoseText:req, trainer2Id:req, trainer2LoseText:req, partnerId:req
|
||||||
special SavePlayerParty
|
special SavePlayerParty
|
||||||
trainerbattle TRAINER_BATTLE_SET_TRAINER_A, \trainer1Id, 0, NULL, \trainer1LoseText @ set first trainer mons
|
trainerbattle TRAINER_BATTLE_SET_TRAINER_A, \trainer1Id, 0, NULL, \trainer1LoseText @ set first trainer mons
|
||||||
trainerbattle TRAINER_BATTLE_SET_TRAINER_B, \trainer2Id, 0, NULL, \trainer2LoseText @ set second trainer mons
|
trainerbattle TRAINER_BATTLE_SET_TRAINER_B, \trainer2Id, 0, NULL, \trainer2LoseText @ set second trainer mons
|
||||||
multi_do MULTI_BATTLE_2_VS_2, \partnerId, \partnerPicId
|
multi_do MULTI_BATTLE_2_VS_2, \partnerId
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro multi_2_vs_1 trainer1Id:req, trainer1LoseText:req, partnerId:req, partnerPicId:req
|
.macro multi_2_vs_1 trainer1Id:req, trainer1LoseText:req, partnerId:req
|
||||||
special SavePlayerParty
|
special SavePlayerParty
|
||||||
trainerbattle TRAINER_BATTLE_SET_TRAINER_A, \trainer1Id, 0, NULL, \trainer1LoseText @ set first trainer mons
|
trainerbattle TRAINER_BATTLE_SET_TRAINER_A, \trainer1Id, 0, NULL, \trainer1LoseText @ set first trainer mons
|
||||||
multi_do MULTI_BATTLE_2_VS_1, \partnerId, \partnerPicId
|
multi_do MULTI_BATTLE_2_VS_1, \partnerId
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
@ Wild mons need to be assigned to gEnemyParty 0 and 3 slots, other slots need to be cleared out.
|
@ Wild mons need to be assigned to gEnemyParty 0 and 3 slots, other slots need to be cleared out.
|
||||||
.macro multi_wild partnerId:req, partnerPicId:req
|
.macro multi_wild partnerId:req
|
||||||
special SavePlayerParty
|
special SavePlayerParty
|
||||||
multi_do MULTI_BATTLE_2_VS_WILD, \partnerId, \partnerPicId
|
multi_do MULTI_BATTLE_2_VS_WILD, \partnerId
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro multi_do_fixed type:req, partnerId:req, partnerPicId:req
|
.macro multi_do_fixed type:req, partnerId:req
|
||||||
setvar VAR_0x8004, SPECIAL_BATTLE_MULTI
|
setvar VAR_0x8004, SPECIAL_BATTLE_MULTI
|
||||||
setvar VAR_0x8005, \type
|
setvar VAR_0x8005, \type
|
||||||
setvar VAR_0x8006, \partnerId
|
setvar VAR_0x8006, \partnerId
|
||||||
setvar VAR_0x8007, \partnerPicId
|
|
||||||
special DoSpecialTrainerBattle
|
special DoSpecialTrainerBattle
|
||||||
waitstate
|
waitstate
|
||||||
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_SAVE_PARTY
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_SAVE_PARTY
|
||||||
@ -145,21 +143,21 @@
|
|||||||
special LoadPlayerParty
|
special LoadPlayerParty
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro multi_fixed_2_vs_2 trainer1Id:req, trainer1LoseText:req, trainer2Id:req, trainer2LoseText:req, partnerId:req, partnerPicId:req
|
.macro multi_fixed_2_vs_2 trainer1Id:req, trainer1LoseText:req, trainer2Id:req, trainer2LoseText:req, partnerId:req
|
||||||
special SavePlayerParty
|
special SavePlayerParty
|
||||||
trainerbattle TRAINER_BATTLE_SET_TRAINER_A, \trainer1Id, 0, NULL, \trainer1LoseText @ set first trainer mons
|
trainerbattle TRAINER_BATTLE_SET_TRAINER_A, \trainer1Id, 0, NULL, \trainer1LoseText @ set first trainer mons
|
||||||
trainerbattle TRAINER_BATTLE_SET_TRAINER_B, \trainer2Id, 0, NULL, \trainer2LoseText @ set second trainer mons
|
trainerbattle TRAINER_BATTLE_SET_TRAINER_B, \trainer2Id, 0, NULL, \trainer2LoseText @ set second trainer mons
|
||||||
multi_do_fixed MULTI_BATTLE_2_VS_2, \partnerId, \partnerPicId
|
multi_do_fixed MULTI_BATTLE_2_VS_2, \partnerId
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro multi_fixed_2_vs_1 trainer1Id:req, trainer1LoseText:req, partnerId:req, partnerPicId:req
|
.macro multi_fixed_2_vs_1 trainer1Id:req, trainer1LoseText:req, partnerId:req
|
||||||
special SavePlayerParty
|
special SavePlayerParty
|
||||||
trainerbattle TRAINER_BATTLE_SET_TRAINER_A, \trainer1Id, 0, NULL, \trainer1LoseText @ set first trainer mons
|
trainerbattle TRAINER_BATTLE_SET_TRAINER_A, \trainer1Id, 0, NULL, \trainer1LoseText @ set first trainer mons
|
||||||
multi_do_fixed MULTI_BATTLE_2_VS_1, \partnerId, \partnerPicId
|
multi_do_fixed MULTI_BATTLE_2_VS_1, \partnerId
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
@ Wild mons need to be assigned to gEnemyParty 0 and 3 slots, other slots need to be cleared out.
|
@ Wild mons need to be assigned to gEnemyParty 0 and 3 slots, other slots need to be cleared out.
|
||||||
.macro multi_fixed_wild partnerId:req, partnerPicId:req
|
.macro multi_fixed_wild partnerId:req
|
||||||
special SavePlayerParty
|
special SavePlayerParty
|
||||||
multi_do_fixed MULTI_BATTLE_2_VS_WILD, \partnerId, \partnerPicId
|
multi_do_fixed MULTI_BATTLE_2_VS_WILD, \partnerId
|
||||||
.endm
|
.endm
|
||||||
|
|||||||
@ -1520,18 +1520,10 @@
|
|||||||
.4byte \jumpInstr
|
.4byte \jumpInstr
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro jumpifrodaffected battler:req, jumpInstr:req
|
.macro jumpifelectricabilityaffected battler:req, ability:req, jumpInstr:req
|
||||||
callnative BS_JumpIfRod
|
callnative BS_JumpIfElectricAbilityAffected
|
||||||
.4byte \jumpInstr
|
.byte \battler
|
||||||
.endm
|
.2byte \ability
|
||||||
|
|
||||||
.macro jumpifabsorbaffected battler:req, jumpInstr:req
|
|
||||||
callnative BS_JumpIfAbsorb
|
|
||||||
.4byte \jumpInstr
|
|
||||||
.endm
|
|
||||||
|
|
||||||
.macro jumpifmotoraffected battler:req, jumpInstr:req
|
|
||||||
callnative BS_JumpIfMotor
|
|
||||||
.4byte \jumpInstr
|
.4byte \jumpInstr
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
@ -1641,6 +1633,10 @@
|
|||||||
callnative BS_TryUpdateRecoilTracker
|
callnative BS_TryUpdateRecoilTracker
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
|
.macro tryupdateleaderscresttracker
|
||||||
|
callnative BS_TryUpdateLeadersCrestTracker
|
||||||
|
.endm
|
||||||
|
|
||||||
.macro trytidyup clear:req, jumpInstr:req
|
.macro trytidyup clear:req, jumpInstr:req
|
||||||
callnative BS_TryTidyUp
|
callnative BS_TryTidyUp
|
||||||
.byte \clear
|
.byte \clear
|
||||||
@ -1650,11 +1646,11 @@
|
|||||||
.macro trygulpmissile
|
.macro trygulpmissile
|
||||||
callnative BS_TryGulpMissile
|
callnative BS_TryGulpMissile
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro tryactivategulpmissile
|
.macro tryactivategulpmissile
|
||||||
callnative BS_TryActivateGulpMissile
|
callnative BS_TryActivateGulpMissile
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro tryquash failInstr:req
|
.macro tryquash failInstr:req
|
||||||
callnative BS_TryQuash
|
callnative BS_TryQuash
|
||||||
.4byte \failInstr
|
.4byte \failInstr
|
||||||
@ -1668,6 +1664,10 @@
|
|||||||
callnative BS_ApplyTerastallization
|
callnative BS_ApplyTerastallization
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
|
.macro damagetoquartertargethp
|
||||||
|
callnative BS_DamageToQuarterTargetHP
|
||||||
|
.endm
|
||||||
|
|
||||||
@ various command changed to more readable macros
|
@ various command changed to more readable macros
|
||||||
.macro cancelmultiturnmoves battler:req
|
.macro cancelmultiturnmoves battler:req
|
||||||
various \battler, VARIOUS_CANCEL_MULTI_TURN_MOVES
|
various \battler, VARIOUS_CANCEL_MULTI_TURN_MOVES
|
||||||
@ -2224,10 +2224,6 @@
|
|||||||
.4byte \failInstr
|
.4byte \failInstr
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro shellsidearmcheck
|
|
||||||
various BS_ATTACKER, VARIOUS_SHELL_SIDE_ARM_CHECK
|
|
||||||
.endm
|
|
||||||
|
|
||||||
.macro jumpifteanoberry jumpInstr:req
|
.macro jumpifteanoberry jumpInstr:req
|
||||||
various BS_ATTACKER, VARIOUS_TEATIME_TARGETS
|
various BS_ATTACKER, VARIOUS_TEATIME_TARGETS
|
||||||
.4byte \jumpInstr
|
.4byte \jumpInstr
|
||||||
|
|||||||
@ -776,6 +776,16 @@
|
|||||||
trainerbattle TRAINER_BATTLE_SINGLE_NO_INTRO_TEXT, \trainer, 0, \lose_text
|
trainerbattle TRAINER_BATTLE_SINGLE_NO_INTRO_TEXT, \trainer, 0, \lose_text
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
|
@ Starts a double battle with the player against two trainers
|
||||||
|
@ Takes two trainers and defeat text for each
|
||||||
|
.macro trainerbattle_two_trainers trainer_a:req, lose_text_a:req, trainer_b:req, lose_text_b:req
|
||||||
|
.byte 0x5c
|
||||||
|
.byte TRAINER_BATTLE_TWO_TRAINERS_NO_INTRO
|
||||||
|
.2byte \trainer_a
|
||||||
|
.4byte \lose_text_a
|
||||||
|
.2byte \trainer_b
|
||||||
|
.4byte \lose_text_b
|
||||||
|
.endm
|
||||||
|
|
||||||
@ Starts a trainer battle using the battle information stored in RAM (usually by the scripts in trainer_battle.inc, which
|
@ 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.
|
@ are run by trainerbattle), and blocks script execution until the battle finishes.
|
||||||
@ -987,7 +997,69 @@
|
|||||||
@ Gives the player a Pokémon of the specified species and level, and allows to customize extra parameters.
|
@ Gives the player a Pokémon of the specified species and level, and allows to customize extra 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, ball, nature, abilityNum, gender, hpEv, atkEv, defEv, speedEv, spAtkEv, spDefEv, hpIv, atkIv, defIv, speedIv, spAtkIv, spDefIv, move1, move2, move3, move4, isShiny, ggMaxFactor, teraType
|
.macro givemon species:req, level:req, item, ball, nature, abilityNum, gender, hpEv, atkEv, defEv, speedEv, spAtkEv, spDefEv, hpIv, atkIv, defIv, speedIv, spAtkIv, spDefIv, move1, move2, move3, move4, isShiny, ggMaxFactor, teraType
|
||||||
callnative ScrCmd_givemon
|
callnative ScrCmd_createmon
|
||||||
|
.byte 0
|
||||||
|
.byte 6 @ PARTY_SIZE - assign to first empty slot
|
||||||
|
.set givemon_flags, 0
|
||||||
|
.2byte \species
|
||||||
|
.2byte \level
|
||||||
|
.ifnb \item; .set givemon_flags, givemon_flags | (1 << 0); .endif
|
||||||
|
.ifnb \ball; .set givemon_flags, givemon_flags | (1 << 1); .endif
|
||||||
|
.ifnb \nature; .set givemon_flags, givemon_flags | (1 << 2); .endif
|
||||||
|
.ifnb \abilityNum; .set givemon_flags, givemon_flags | (1 << 3); .endif
|
||||||
|
.ifnb \gender; .set givemon_flags, givemon_flags | (1 << 4); .endif
|
||||||
|
.ifnb \hpEv; .set givemon_flags, givemon_flags | (1 << 5); .endif
|
||||||
|
.ifnb \atkEv; .set givemon_flags, givemon_flags | (1 << 6); .endif
|
||||||
|
.ifnb \defEv; .set givemon_flags, givemon_flags | (1 << 7); .endif
|
||||||
|
.ifnb \speedEv; .set givemon_flags, givemon_flags | (1 << 8); .endif
|
||||||
|
.ifnb \spAtkEv; .set givemon_flags, givemon_flags | (1 << 9); .endif
|
||||||
|
.ifnb \spDefEv; .set givemon_flags, givemon_flags | (1 << 10); .endif
|
||||||
|
.ifnb \hpIv; .set givemon_flags, givemon_flags | (1 << 11); .endif
|
||||||
|
.ifnb \atkIv; .set givemon_flags, givemon_flags | (1 << 12); .endif
|
||||||
|
.ifnb \defIv; .set givemon_flags, givemon_flags | (1 << 13); .endif
|
||||||
|
.ifnb \speedIv; .set givemon_flags, givemon_flags | (1 << 14); .endif
|
||||||
|
.ifnb \spAtkIv; .set givemon_flags, givemon_flags | (1 << 15); .endif
|
||||||
|
.ifnb \spDefIv; .set givemon_flags, givemon_flags | (1 << 16); .endif
|
||||||
|
.ifnb \move1; .set givemon_flags, givemon_flags | (1 << 17); .endif
|
||||||
|
.ifnb \move2; .set givemon_flags, givemon_flags | (1 << 18); .endif
|
||||||
|
.ifnb \move3; .set givemon_flags, givemon_flags | (1 << 19); .endif
|
||||||
|
.ifnb \move4; .set givemon_flags, givemon_flags | (1 << 20); .endif
|
||||||
|
.ifnb \isShiny; .set givemon_flags, givemon_flags | (1 << 21); .endif
|
||||||
|
.ifnb \ggMaxFactor; .set givemon_flags, givemon_flags | (1 << 22); .endif
|
||||||
|
.ifnb \teraType; .set givemon_flags, givemon_flags | (1 << 23); .endif
|
||||||
|
.4byte givemon_flags
|
||||||
|
.ifnb \item; .2byte \item; .endif
|
||||||
|
.ifnb \ball; .2byte \ball; .endif
|
||||||
|
.ifnb \nature; .2byte \nature; .endif
|
||||||
|
.ifnb \abilityNum; .2byte \abilityNum; .endif
|
||||||
|
.ifnb \gender; .2byte \gender; .endif
|
||||||
|
.ifnb \hpEv; .2byte \hpEv; .endif
|
||||||
|
.ifnb \atkEv; .2byte \atkEv; .endif
|
||||||
|
.ifnb \defEv; .2byte \defEv; .endif
|
||||||
|
.ifnb \speedEv; .2byte \speedEv; .endif
|
||||||
|
.ifnb \spAtkEv; .2byte \spAtkEv; .endif
|
||||||
|
.ifnb \spDefEv; .2byte \spDefEv; .endif
|
||||||
|
.ifnb \hpIv; .2byte \hpIv; .endif
|
||||||
|
.ifnb \atkIv; .2byte \atkIv; .endif
|
||||||
|
.ifnb \defIv; .2byte \defIv; .endif
|
||||||
|
.ifnb \speedIv; .2byte \speedIv; .endif
|
||||||
|
.ifnb \spAtkIv; .2byte \spAtkIv; .endif
|
||||||
|
.ifnb \spDefIv; .2byte \spDefIv; .endif
|
||||||
|
.ifnb \move1; .2byte \move1; .endif
|
||||||
|
.ifnb \move2; .2byte \move2; .endif
|
||||||
|
.ifnb \move3; .2byte \move3; .endif
|
||||||
|
.ifnb \move4; .2byte \move4; .endif
|
||||||
|
.ifnb \isShiny; .2byte \isShiny; .endif
|
||||||
|
.ifnb \ggMaxFactor; .2byte \ggMaxFactor; .endif
|
||||||
|
.ifnb \teraType; .2byte \teraType; .endif
|
||||||
|
.endm
|
||||||
|
|
||||||
|
@ creates a mon for a given party and slot
|
||||||
|
@ otherwise
|
||||||
|
.macro createmon side:req, slot:req, species:req, level:req, item, ball, nature, abilityNum, gender, hpEv, atkEv, defEv, speedEv, spAtkEv, spDefEv, hpIv, atkIv, defIv, speedIv, spAtkIv, spDefIv, move1, move2, move3, move4, isShiny, ggMaxFactor, teraType
|
||||||
|
callnative ScrCmd_createmon
|
||||||
|
.byte \side @ 0 - player, 1 - opponent
|
||||||
|
.byte \slot @ 0-5
|
||||||
.set givemon_flags, 0
|
.set givemon_flags, 0
|
||||||
.2byte \species
|
.2byte \species
|
||||||
.2byte \level
|
.2byte \level
|
||||||
@ -2022,6 +2094,11 @@
|
|||||||
setvar VAR_0x8006, \item
|
setvar VAR_0x8006, \item
|
||||||
special CreateEnemyEventMon
|
special CreateEnemyEventMon
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
|
.macro setdynamicaifunc func:req
|
||||||
|
callnative ScriptSetDynamicAiFunc
|
||||||
|
.4byte \func
|
||||||
|
.endm
|
||||||
|
|
||||||
@ Set up a totem boost for the next battle.
|
@ Set up a totem boost for the next battle.
|
||||||
@ 'battler' is the position of the mon you want to gain a boost. see B_POSITION_xx in include/constants/battle.h.
|
@ 'battler' is the position of the mon you want to gain a boost. see B_POSITION_xx in include/constants/battle.h.
|
||||||
@ -2095,7 +2172,7 @@
|
|||||||
setvar VAR_0x8002, \tryMultiple
|
setvar VAR_0x8002, \tryMultiple
|
||||||
special TrySpecialOverworldEvo
|
special TrySpecialOverworldEvo
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
.macro ai_vs_ai_battle trainer1:req, trainer2:req
|
.macro ai_vs_ai_battle trainer1:req, trainer2:req
|
||||||
setflag B_FLAG_AI_VS_AI_BATTLE
|
setflag B_FLAG_AI_VS_AI_BATTLE
|
||||||
setvar VAR_0x8004, \trainer1
|
setvar VAR_0x8004, \trainer1
|
||||||
@ -2223,3 +2300,9 @@
|
|||||||
.byte \sourceId
|
.byte \sourceId
|
||||||
.byte \targetId
|
.byte \targetId
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
|
@ set the wild double battle flag
|
||||||
|
@ can be used in conjunection with createmon to set up a wild battle with 2 player mons vs. 1 enemy mon
|
||||||
|
.macro setwilddoubleflag
|
||||||
|
callnative ScriptSetDoubleBattleFlag
|
||||||
|
.endm
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
#!/bin/bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
if [[ -d "$DEVKITARM/bin/" ]]; then
|
if [[ -d "$DEVKITARM/bin/" ]]; then
|
||||||
OBJDUMP_BIN="$DEVKITARM/bin/arm-none-eabi-objdump"
|
OBJDUMP_BIN="$DEVKITARM/bin/arm-none-eabi-objdump"
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
#include "config.h"
|
#include "config/general.h"
|
||||||
#include "config/battle.h"
|
#include "config/battle.h"
|
||||||
#include "constants/battle.h"
|
#include "constants/battle.h"
|
||||||
#include "constants/battle_anim.h"
|
#include "constants/battle_anim.h"
|
||||||
@ -4221,7 +4221,6 @@ Move_SMACK_DOWN::
|
|||||||
createvisualtask AnimTask_SmokescreenImpact, 0x8, 0x400, 0x1902
|
createvisualtask AnimTask_SmokescreenImpact, 0x8, 0x400, 0x1902
|
||||||
fadetobg BG_IN_AIR
|
fadetobg BG_IN_AIR
|
||||||
waitbgfadeout
|
waitbgfadeout
|
||||||
createvisualtask AnimTask_StartSlidingBg, 5, 0x0, 0x0, 0x0, 0xffff
|
|
||||||
createvisualtask AnimTask_SeismicTossBgAccelerateDownAtEnd, 3
|
createvisualtask AnimTask_SeismicTossBgAccelerateDownAtEnd, 3
|
||||||
goto SeismicTossWeak
|
goto SeismicTossWeak
|
||||||
|
|
||||||
@ -28263,6 +28262,7 @@ Move_TECTONIC_RAGE::
|
|||||||
waitforvisualfinish
|
waitforvisualfinish
|
||||||
call UnsetPsychicBg
|
call UnsetPsychicBg
|
||||||
waitbgfadein
|
waitbgfadein
|
||||||
|
clearmonbg_static ANIM_ATTACKER
|
||||||
createvisualtask AnimTask_AllBattlersVisible, 0xA
|
createvisualtask AnimTask_AllBattlersVisible, 0xA
|
||||||
waitforvisualfinish
|
waitforvisualfinish
|
||||||
end
|
end
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
#include "config.h"
|
#include "config/general.h"
|
||||||
#include "config/battle.h"
|
#include "config/battle.h"
|
||||||
#include "constants/global.h"
|
#include "constants/global.h"
|
||||||
#include "constants/battle.h"
|
#include "constants/battle.h"
|
||||||
@ -20,6 +20,16 @@
|
|||||||
|
|
||||||
.section script_data, "aw", %progbits
|
.section script_data, "aw", %progbits
|
||||||
|
|
||||||
|
BattleScript_DamageToQuarterTargetHP::
|
||||||
|
attackcanceler
|
||||||
|
accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE
|
||||||
|
attackstring
|
||||||
|
ppreduce
|
||||||
|
typecalc
|
||||||
|
bichalfword gMoveResultFlags, MOVE_RESULT_SUPER_EFFECTIVE | MOVE_RESULT_NOT_VERY_EFFECTIVE
|
||||||
|
damagetoquartertargethp
|
||||||
|
goto BattleScript_HitFromAtkAnimation
|
||||||
|
|
||||||
BattleScript_Terastallization::
|
BattleScript_Terastallization::
|
||||||
@ TODO: no string prints in S/V, but right now this helps with clarity
|
@ TODO: no string prints in S/V, but right now this helps with clarity
|
||||||
printstring STRINGID_PKMNSTORINGENERGY
|
printstring STRINGID_PKMNSTORINGENERGY
|
||||||
@ -517,9 +527,9 @@ BattleScript_EffectTeatime::
|
|||||||
waitanimation
|
waitanimation
|
||||||
setbyte gBattlerTarget, 0
|
setbyte gBattlerTarget, 0
|
||||||
BattleScript_TeatimeLoop:
|
BattleScript_TeatimeLoop:
|
||||||
jumpifrodaffected BS_TARGET, BattleScript_Teatimerod
|
jumpifelectricabilityaffected BS_TARGET, ABILITY_LIGHTNING_ROD, BattleScript_Teatimerod
|
||||||
jumpifabsorbaffected BS_TARGET, BattleScript_Teatimesorb
|
jumpifelectricabilityaffected BS_TARGET, ABILITY_VOLT_ABSORB, BattleScript_Teatimesorb
|
||||||
jumpifmotoraffected BS_TARGET, BattleScript_Teatimemotor
|
jumpifelectricabilityaffected BS_TARGET, ABILITY_MOTOR_DRIVE, BattleScript_Teatimemotor
|
||||||
jumpifteainvulnerable BS_TARGET, BattleScript_Teatimevul @ in semi-invulnerable state OR held item is not a Berry
|
jumpifteainvulnerable BS_TARGET, BattleScript_Teatimevul @ in semi-invulnerable state OR held item is not a Berry
|
||||||
orword gHitMarker, HITMARKER_DISABLE_ANIMATION | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_DISGUISE
|
orword gHitMarker, HITMARKER_DISABLE_ANIMATION | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_DISGUISE
|
||||||
setbyte sBERRY_OVERRIDE, TRUE @ override the requirements for eating berries
|
setbyte sBERRY_OVERRIDE, TRUE @ override the requirements for eating berries
|
||||||
@ -804,10 +814,6 @@ BattleScript_FlingMissed:
|
|||||||
ppreduce
|
ppreduce
|
||||||
goto BattleScript_MoveMissedPause
|
goto BattleScript_MoveMissedPause
|
||||||
|
|
||||||
BattleScript_EffectShellSideArm::
|
|
||||||
shellsidearmcheck
|
|
||||||
goto BattleScript_EffectHit
|
|
||||||
|
|
||||||
BattleScript_EffectPhotonGeyser::
|
BattleScript_EffectPhotonGeyser::
|
||||||
setphotongeysercategory
|
setphotongeysercategory
|
||||||
goto BattleScript_EffectHit
|
goto BattleScript_EffectHit
|
||||||
@ -1608,6 +1614,7 @@ BattleScript_MoveEffectFlameBurst::
|
|||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
savetarget
|
savetarget
|
||||||
copybyte gBattlerTarget, sSAVED_BATTLER
|
copybyte gBattlerTarget, sSAVED_BATTLER
|
||||||
|
orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||||
healthbarupdate BS_TARGET
|
healthbarupdate BS_TARGET
|
||||||
datahpupdate BS_TARGET
|
datahpupdate BS_TARGET
|
||||||
tryfaintmon BS_TARGET
|
tryfaintmon BS_TARGET
|
||||||
@ -1819,6 +1826,7 @@ BattleScript_EffectHitSwitchTarget::
|
|||||||
tryfaintmon BS_TARGET
|
tryfaintmon BS_TARGET
|
||||||
jumpiffainted BS_TARGET, TRUE, BattleScript_MoveEnd
|
jumpiffainted BS_TARGET, TRUE, BattleScript_MoveEnd
|
||||||
jumpifability BS_TARGET, ABILITY_SUCTION_CUPS, BattleScript_AbilityPreventsPhasingOut
|
jumpifability BS_TARGET, ABILITY_SUCTION_CUPS, BattleScript_AbilityPreventsPhasingOut
|
||||||
|
jumpifability BS_TARGET, ABILITY_GUARD_DOG, BattleScript_MoveEnd
|
||||||
jumpifstatus3 BS_TARGET, STATUS3_ROOTED, BattleScript_PrintMonIsRooted
|
jumpifstatus3 BS_TARGET, STATUS3_ROOTED, BattleScript_PrintMonIsRooted
|
||||||
jumpiftargetdynamaxed BattleScript_HitSwitchTargetDynamaxed
|
jumpiftargetdynamaxed BattleScript_HitSwitchTargetDynamaxed
|
||||||
tryhitswitchtarget BattleScript_MoveEnd
|
tryhitswitchtarget BattleScript_MoveEnd
|
||||||
@ -2765,12 +2773,11 @@ BattleScript_EffectHealBlock::
|
|||||||
BattleScript_EffectHitEscape::
|
BattleScript_EffectHitEscape::
|
||||||
call BattleScript_EffectHit_Ret
|
call BattleScript_EffectHit_Ret
|
||||||
jumpifmovehadnoeffect BattleScript_MoveEnd
|
jumpifmovehadnoeffect BattleScript_MoveEnd
|
||||||
jumpifability BS_TARGET, ABILITY_GUARD_DOG, BattleScript_MoveEnd
|
|
||||||
tryfaintmon BS_TARGET
|
tryfaintmon BS_TARGET
|
||||||
moveendto MOVEEND_ATTACKER_VISIBLE
|
moveendto MOVEEND_ATTACKER_VISIBLE
|
||||||
moveendfrom MOVEEND_TARGET_VISIBLE
|
moveendfrom MOVEEND_TARGET_VISIBLE
|
||||||
jumpifbattleend BattleScript_HitEscapeEnd
|
jumpifbattleend BattleScript_HitEscapeEnd
|
||||||
jumpifbyte CMP_NOT_EQUAL gBattleOutcome 0, BattleScript_HitEscapeEnd
|
jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_HitEscapeEnd
|
||||||
jumpifemergencyexited BS_TARGET, BattleScript_HitEscapeEnd
|
jumpifemergencyexited BS_TARGET, BattleScript_HitEscapeEnd
|
||||||
goto BattleScript_MoveSwitch
|
goto BattleScript_MoveSwitch
|
||||||
BattleScript_HitEscapeEnd:
|
BattleScript_HitEscapeEnd:
|
||||||
@ -3701,7 +3708,7 @@ BattleScript_EffectParalyze::
|
|||||||
BattleScript_BattleScript_EffectParalyzeNoTypeCalc:
|
BattleScript_BattleScript_EffectParalyzeNoTypeCalc:
|
||||||
jumpifmovehadnoeffect BattleScript_ButItFailed
|
jumpifmovehadnoeffect BattleScript_ButItFailed
|
||||||
jumpifstatus BS_TARGET, STATUS1_PARALYSIS, BattleScript_AlreadyParalyzed
|
jumpifstatus BS_TARGET, STATUS1_PARALYSIS, BattleScript_AlreadyParalyzed
|
||||||
jumpifabsorbaffected BS_TARGET, BattleScript_VoltAbsorbHeal
|
jumpifelectricabilityaffected BS_TARGET, ABILITY_VOLT_ABSORB, BattleScript_VoltAbsorbHeal
|
||||||
tryparalyzetype BS_ATTACKER, BS_TARGET, BattleScript_NotAffected
|
tryparalyzetype BS_ATTACKER, BS_TARGET, BattleScript_NotAffected
|
||||||
jumpifstatus BS_TARGET, STATUS1_ANY, BattleScript_ButItFailed
|
jumpifstatus BS_TARGET, STATUS1_ANY, BattleScript_ButItFailed
|
||||||
jumpifterrainaffected BS_TARGET, STATUS_FIELD_MISTY_TERRAIN, BattleScript_MistyTerrainPrevents
|
jumpifterrainaffected BS_TARGET, STATUS_FIELD_MISTY_TERRAIN, BattleScript_MistyTerrainPrevents
|
||||||
@ -5477,6 +5484,7 @@ BattleScript_FaintAttacker::
|
|||||||
BattleScript_FaintTarget::
|
BattleScript_FaintTarget::
|
||||||
tryillusionoff BS_TARGET
|
tryillusionoff BS_TARGET
|
||||||
tryactivategulpmissile
|
tryactivategulpmissile
|
||||||
|
tryupdateleaderscresttracker
|
||||||
playfaintcry BS_TARGET
|
playfaintcry BS_TARGET
|
||||||
pause B_WAIT_TIME_LONG
|
pause B_WAIT_TIME_LONG
|
||||||
dofaintanimation BS_TARGET
|
dofaintanimation BS_TARGET
|
||||||
@ -5499,7 +5507,7 @@ BattleScript_GiveExp::
|
|||||||
|
|
||||||
BattleScript_HandleFaintedMon::
|
BattleScript_HandleFaintedMon::
|
||||||
setbyte sSHIFT_SWITCHED, 0
|
setbyte sSHIFT_SWITCHED, 0
|
||||||
checkteamslost BattleScript_LinkHandleFaintedMonMultiple
|
checkteamslost BattleScript_HandleFaintedMonMultiple
|
||||||
jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_FaintedMonEnd
|
jumpifbyte CMP_NOT_EQUAL, gBattleOutcome, 0, BattleScript_FaintedMonEnd
|
||||||
jumpifbattletype BATTLE_TYPE_TRAINER | BATTLE_TYPE_DOUBLE, BattleScript_FaintedMonTryChoose
|
jumpifbattletype BATTLE_TYPE_TRAINER | BATTLE_TYPE_DOUBLE, BattleScript_FaintedMonTryChoose
|
||||||
jumpifword CMP_NO_COMMON_BITS, gHitMarker, HITMARKER_PLAYER_FAINTED, BattleScript_FaintedMonTryChoose
|
jumpifword CMP_NO_COMMON_BITS, gHitMarker, HITMARKER_PLAYER_FAINTED, BattleScript_FaintedMonTryChoose
|
||||||
@ -5580,13 +5588,13 @@ BattleScript_FaintedMonShiftSwitched:
|
|||||||
copybyte gBattlerTarget, sSAVED_BATTLER
|
copybyte gBattlerTarget, sSAVED_BATTLER
|
||||||
goto BattleScript_FaintedMonSendOutNewEnd
|
goto BattleScript_FaintedMonSendOutNewEnd
|
||||||
|
|
||||||
BattleScript_LinkHandleFaintedMonMultiple::
|
BattleScript_HandleFaintedMonMultiple::
|
||||||
openpartyscreen BS_FAINTED_LINK_MULTIPLE_1, BattleScript_LinkHandleFaintedMonMultipleStart
|
openpartyscreen BS_FAINTED_MULTIPLE_1, BattleScript_HandleFaintedMonMultipleStart
|
||||||
BattleScript_LinkHandleFaintedMonMultipleStart::
|
BattleScript_HandleFaintedMonMultipleStart::
|
||||||
switchhandleorder BS_FAINTED, 0
|
switchhandleorder BS_FAINTED, 0
|
||||||
openpartyscreen BS_FAINTED_LINK_MULTIPLE_2, BattleScript_LinkHandleFaintedMonMultipleEnd
|
openpartyscreen BS_FAINTED_MULTIPLE_2, BattleScript_HandleFaintedMonMultipleEnd
|
||||||
switchhandleorder BS_FAINTED, 0
|
switchhandleorder BS_FAINTED, 0
|
||||||
BattleScript_LinkHandleFaintedMonLoop::
|
BattleScript_HandleFaintedMonLoop::
|
||||||
switchhandleorder BS_FAINTED, 3
|
switchhandleorder BS_FAINTED, 3
|
||||||
drawpartystatussummary BS_FAINTED
|
drawpartystatussummary BS_FAINTED
|
||||||
getswitchedmondata BS_FAINTED
|
getswitchedmondata BS_FAINTED
|
||||||
@ -5598,9 +5606,10 @@ BattleScript_LinkHandleFaintedMonLoop::
|
|||||||
hidepartystatussummary BS_FAINTED
|
hidepartystatussummary BS_FAINTED
|
||||||
switchinanim BS_FAINTED, FALSE
|
switchinanim BS_FAINTED, FALSE
|
||||||
waitstate
|
waitstate
|
||||||
switchineffects BS_FAINTED_LINK_MULTIPLE_1
|
switchineffects BS_FAINTED_MULTIPLE_1
|
||||||
jumpifbytenotequal gBattlerFainted, gBattlersCount, BattleScript_LinkHandleFaintedMonLoop
|
jumpifbytenotequal gBattlerFainted, gBattlersCount, BattleScript_HandleFaintedMonLoop
|
||||||
BattleScript_LinkHandleFaintedMonMultipleEnd::
|
BattleScript_HandleFaintedMonMultipleEnd::
|
||||||
|
switchineffects BS_FAINTED_MULTIPLE_2
|
||||||
end2
|
end2
|
||||||
|
|
||||||
BattleScript_LocalTrainerBattleWon::
|
BattleScript_LocalTrainerBattleWon::
|
||||||
@ -5831,6 +5840,7 @@ BattleScript_DoSwitchOut::
|
|||||||
|
|
||||||
BattleScript_PursuitDmgOnSwitchOut::
|
BattleScript_PursuitDmgOnSwitchOut::
|
||||||
pause B_WAIT_TIME_SHORT
|
pause B_WAIT_TIME_SHORT
|
||||||
|
orword gHitMarker, HITMARKER_OBEYS
|
||||||
attackstring
|
attackstring
|
||||||
ppreduce
|
ppreduce
|
||||||
critcalc
|
critcalc
|
||||||
@ -5848,11 +5858,12 @@ BattleScript_PursuitDmgOnSwitchOut::
|
|||||||
resultmessage
|
resultmessage
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
tryfaintmon BS_TARGET
|
tryfaintmon BS_TARGET
|
||||||
moveendfromto MOVEEND_ABILITIES, MOVEEND_CHOICE_MOVE
|
moveendfromto MOVEEND_ABILITIES, MOVEEND_ATTACKER_INVISIBLE @ MOVEEND_CHOICE_MOVE has to be included
|
||||||
jumpiffainted BS_TARGET, FALSE, BattleScript_PursuitDmgOnSwitchOutRet
|
jumpiffainted BS_TARGET, FALSE, BattleScript_PursuitDmgOnSwitchOutRet
|
||||||
setbyte sGIVEEXP_STATE, 0
|
setbyte sGIVEEXP_STATE, 0
|
||||||
getexp BS_TARGET
|
getexp BS_TARGET
|
||||||
BattleScript_PursuitDmgOnSwitchOutRet:
|
BattleScript_PursuitDmgOnSwitchOutRet:
|
||||||
|
bicword gHitMarker, HITMARKER_OBEYS
|
||||||
return
|
return
|
||||||
|
|
||||||
BattleScript_Pausex20::
|
BattleScript_Pausex20::
|
||||||
@ -6037,6 +6048,10 @@ BattleScript_MagicRoomEnds::
|
|||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
end2
|
end2
|
||||||
|
|
||||||
|
BattleScript_GrassyTerrainEnds::
|
||||||
|
call BattleScript_GrassyTerrainHeals_Ret
|
||||||
|
goto BattleScript_TerrainEnds
|
||||||
|
|
||||||
BattleScript_TerrainEnds_Ret::
|
BattleScript_TerrainEnds_Ret::
|
||||||
printfromtable gTerrainStringIds
|
printfromtable gTerrainStringIds
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
@ -6529,6 +6544,9 @@ BattleScript_PerishSongCountGoesDown::
|
|||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
end2
|
end2
|
||||||
|
|
||||||
|
BattleScript_AllStatsUpZMove::
|
||||||
|
printfromtable gZEffectStringIds
|
||||||
|
waitmessage B_WAIT_TIME_LONG
|
||||||
BattleScript_AllStatsUp::
|
BattleScript_AllStatsUp::
|
||||||
jumpifstat BS_ATTACKER, CMP_LESS_THAN, STAT_ATK, MAX_STAT_STAGE, BattleScript_AllStatsUpAtk
|
jumpifstat BS_ATTACKER, CMP_LESS_THAN, STAT_ATK, MAX_STAT_STAGE, BattleScript_AllStatsUpAtk
|
||||||
jumpifstat BS_ATTACKER, CMP_LESS_THAN, STAT_DEF, MAX_STAT_STAGE, BattleScript_AllStatsUpAtk
|
jumpifstat BS_ATTACKER, CMP_LESS_THAN, STAT_DEF, MAX_STAT_STAGE, BattleScript_AllStatsUpAtk
|
||||||
@ -6987,13 +7005,13 @@ BattleScript_MegaEvolution::
|
|||||||
BattleScript_MegaEvolutionAfterString:
|
BattleScript_MegaEvolutionAfterString:
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
setbyte gIsCriticalHit, 0
|
setbyte gIsCriticalHit, 0
|
||||||
handlemegaevo BS_ATTACKER, 0
|
handlemegaevo BS_SCRIPTING, 0
|
||||||
playanimation BS_ATTACKER, B_ANIM_MEGA_EVOLUTION
|
playanimation BS_SCRIPTING, B_ANIM_MEGA_EVOLUTION
|
||||||
waitanimation
|
waitanimation
|
||||||
handlemegaevo BS_ATTACKER, 1
|
handlemegaevo BS_SCRIPTING, 1
|
||||||
printstring STRINGID_MEGAEVOEVOLVED
|
printstring STRINGID_MEGAEVOEVOLVED
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
switchinabilities BS_ATTACKER
|
switchinabilities BS_SCRIPTING
|
||||||
end3
|
end3
|
||||||
|
|
||||||
BattleScript_WishMegaEvolution::
|
BattleScript_WishMegaEvolution::
|
||||||
@ -7030,13 +7048,13 @@ BattleScript_UltraBurst::
|
|||||||
printstring STRINGID_ULTRABURSTREACTING
|
printstring STRINGID_ULTRABURSTREACTING
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
setbyte gIsCriticalHit, 0
|
setbyte gIsCriticalHit, 0
|
||||||
handleultraburst BS_ATTACKER, 0
|
handleultraburst BS_SCRIPTING, 0
|
||||||
playanimation BS_ATTACKER, B_ANIM_ULTRA_BURST
|
playanimation BS_SCRIPTING, B_ANIM_ULTRA_BURST
|
||||||
waitanimation
|
waitanimation
|
||||||
handleultraburst BS_ATTACKER, 1
|
handleultraburst BS_SCRIPTING, 1
|
||||||
printstring STRINGID_ULTRABURSTCOMPLETED
|
printstring STRINGID_ULTRABURSTCOMPLETED
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
switchinabilities BS_ATTACKER
|
switchinabilities BS_SCRIPTING
|
||||||
end3
|
end3
|
||||||
|
|
||||||
BattleScript_GulpMissileFormChange::
|
BattleScript_GulpMissileFormChange::
|
||||||
@ -8345,6 +8363,10 @@ BattleScript_MoveUsedPsychicTerrainPrevents::
|
|||||||
goto BattleScript_MoveEnd
|
goto BattleScript_MoveEnd
|
||||||
|
|
||||||
BattleScript_GrassyTerrainHeals::
|
BattleScript_GrassyTerrainHeals::
|
||||||
|
call BattleScript_GrassyTerrainHeals_Ret
|
||||||
|
end2
|
||||||
|
|
||||||
|
BattleScript_GrassyTerrainHeals_Ret::
|
||||||
setbyte gBattleCommunication, 0
|
setbyte gBattleCommunication, 0
|
||||||
BattleScript_GrassyTerrainLoop:
|
BattleScript_GrassyTerrainLoop:
|
||||||
copyarraywithindex gBattlerAttacker, gBattlerByTurnOrder, gBattleCommunication, 1
|
copyarraywithindex gBattlerAttacker, gBattlerByTurnOrder, gBattleCommunication, 1
|
||||||
@ -8362,7 +8384,7 @@ BattleScript_GrassyTerrainLoopEnd::
|
|||||||
bicword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
bicword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||||
jumpifword CMP_COMMON_BITS, gFieldStatuses, STATUS_FIELD_TERRAIN_PERMANENT, BattleScript_GrassyTerrainHealEnd
|
jumpifword CMP_COMMON_BITS, gFieldStatuses, STATUS_FIELD_TERRAIN_PERMANENT, BattleScript_GrassyTerrainHealEnd
|
||||||
BattleScript_GrassyTerrainHealEnd:
|
BattleScript_GrassyTerrainHealEnd:
|
||||||
end2
|
return
|
||||||
|
|
||||||
BattleScript_AbilityNoSpecificStatLoss::
|
BattleScript_AbilityNoSpecificStatLoss::
|
||||||
pause B_WAIT_TIME_SHORT
|
pause B_WAIT_TIME_SHORT
|
||||||
@ -8467,7 +8489,7 @@ BattleScript_ScriptingAbilityStatRaise::
|
|||||||
call BattleScript_AbilityPopUp
|
call BattleScript_AbilityPopUp
|
||||||
copybyte sSAVED_DMG, gBattlerAttacker
|
copybyte sSAVED_DMG, gBattlerAttacker
|
||||||
copybyte gBattlerAttacker, sBATTLER
|
copybyte gBattlerAttacker, sBATTLER
|
||||||
statbuffchange STAT_CHANGE_NOT_PROTECT_AFFECTED | MOVE_EFFECT_CERTAIN, NULL
|
statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_CHANGE_NOT_PROTECT_AFFECTED | MOVE_EFFECT_CERTAIN, NULL
|
||||||
setgraphicalstatchangevalues
|
setgraphicalstatchangevalues
|
||||||
playanimation BS_SCRIPTING, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
playanimation BS_SCRIPTING, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1
|
||||||
waitanimation
|
waitanimation
|
||||||
@ -8703,7 +8725,7 @@ BattleScript_SynchronizeActivates::
|
|||||||
return
|
return
|
||||||
|
|
||||||
BattleScript_NoItemSteal::
|
BattleScript_NoItemSteal::
|
||||||
pause B_WAIT_TIME_SHORT
|
call BattleScript_AbilityPopUpTarget
|
||||||
printstring STRINGID_PKMNSXMADEYINEFFECTIVE
|
printstring STRINGID_PKMNSXMADEYINEFFECTIVE
|
||||||
waitmessage B_WAIT_TIME_LONG
|
waitmessage B_WAIT_TIME_LONG
|
||||||
return
|
return
|
||||||
@ -10060,7 +10082,7 @@ BattleScript_BerserkGeneRet_End:
|
|||||||
|
|
||||||
BattleScript_BoosterEnergyEnd2::
|
BattleScript_BoosterEnergyEnd2::
|
||||||
playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, sB_ANIM_ARG1
|
playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT, sB_ANIM_ARG1
|
||||||
call BattleScript_AbilityPopUp
|
call BattleScript_AbilityPopUpTarget
|
||||||
printstring STRINGID_BOOSTERENERGYACTIVATES
|
printstring STRINGID_BOOSTERENERGYACTIVATES
|
||||||
waitmessage B_WAIT_TIME_MED
|
waitmessage B_WAIT_TIME_MED
|
||||||
printstring STRINGID_STATWASHEIGHTENED
|
printstring STRINGID_STATWASHEIGHTENED
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
#include "config.h"
|
#include "config/general.h"
|
||||||
#include "constants/global.h"
|
#include "constants/global.h"
|
||||||
#include "constants/contest.h"
|
#include "constants/contest.h"
|
||||||
.include "asm/macros.inc"
|
.include "asm/macros.inc"
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
#include "config.h"
|
#include "config/general.h"
|
||||||
#include "config/battle.h"
|
#include "config/battle.h"
|
||||||
#include "config/item.h"
|
#include "config/item.h"
|
||||||
#include "constants/global.h"
|
#include "constants/global.h"
|
||||||
|
|||||||
@ -257,7 +257,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_ChoosePartyForMultiBattle::
|
|||||||
goto MossdeepCity_SpaceCenter_2F_EventScript_ReadyForBattlePrompt
|
goto MossdeepCity_SpaceCenter_2F_EventScript_ReadyForBattlePrompt
|
||||||
|
|
||||||
MossdeepCity_SpaceCenter_2F_EventScript_DoStevenMultiBattle::
|
MossdeepCity_SpaceCenter_2F_EventScript_DoStevenMultiBattle::
|
||||||
multi_2_vs_2 TRAINER_MAXIE_MOSSDEEP, MossdeepCity_SpaceCenter_2F_Text_JustWantToExpandLand, TRAINER_TABITHA_MOSSDEEP, MossdeepCity_SpaceCenter_Text_TabithaDefeat, PARTNER_STEVEN, TRAINER_BACK_PIC_STEVEN
|
multi_2_vs_2 TRAINER_MAXIE_MOSSDEEP, MossdeepCity_SpaceCenter_2F_Text_JustWantToExpandLand, TRAINER_TABITHA_MOSSDEEP, MossdeepCity_SpaceCenter_Text_TabithaDefeat, PARTNER_STEVEN
|
||||||
switch VAR_RESULT
|
switch VAR_RESULT
|
||||||
case 1, MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha
|
case 1, MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha
|
||||||
fadescreen FADE_TO_BLACK
|
fadescreen FADE_TO_BLACK
|
||||||
@ -313,6 +313,9 @@ MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha::
|
|||||||
setobjectmovementtype LOCALID_SCIENTIST, MOVEMENT_TYPE_WANDER_AROUND
|
setobjectmovementtype LOCALID_SCIENTIST, MOVEMENT_TYPE_WANDER_AROUND
|
||||||
addobject LOCALID_SCIENTIST
|
addobject LOCALID_SCIENTIST
|
||||||
fadescreen FADE_FROM_BLACK
|
fadescreen FADE_FROM_BLACK
|
||||||
|
#ifdef BUGFIX
|
||||||
|
releaseall
|
||||||
|
#endif
|
||||||
end
|
end
|
||||||
|
|
||||||
MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayer::
|
MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayer::
|
||||||
|
|||||||
@ -138,27 +138,35 @@ Debug_EventScript_Text_DefensiveIVs:
|
|||||||
.string "HP IVs: {STR_VAR_1}, DEF IVs: {STR_VAR_2}, SPDEF IVs: {STR_VAR_3}$"
|
.string "HP IVs: {STR_VAR_1}, DEF IVs: {STR_VAR_2}, SPDEF IVs: {STR_VAR_3}$"
|
||||||
|
|
||||||
Debug_EventScript_Script_1::
|
Debug_EventScript_Script_1::
|
||||||
|
release
|
||||||
end
|
end
|
||||||
|
|
||||||
Debug_EventScript_Script_2::
|
Debug_EventScript_Script_2::
|
||||||
|
release
|
||||||
end
|
end
|
||||||
|
|
||||||
Debug_EventScript_Script_3::
|
Debug_EventScript_Script_3::
|
||||||
|
release
|
||||||
end
|
end
|
||||||
|
|
||||||
Debug_EventScript_Script_4::
|
Debug_EventScript_Script_4::
|
||||||
|
release
|
||||||
end
|
end
|
||||||
|
|
||||||
Debug_EventScript_Script_5::
|
Debug_EventScript_Script_5::
|
||||||
|
release
|
||||||
end
|
end
|
||||||
|
|
||||||
Debug_EventScript_Script_6::
|
Debug_EventScript_Script_6::
|
||||||
|
release
|
||||||
end
|
end
|
||||||
|
|
||||||
Debug_EventScript_Script_7::
|
Debug_EventScript_Script_7::
|
||||||
|
release
|
||||||
end
|
end
|
||||||
|
|
||||||
Debug_EventScript_Script_8::
|
Debug_EventScript_Script_8::
|
||||||
|
release
|
||||||
end
|
end
|
||||||
|
|
||||||
Debug_CheckSaveBlock::
|
Debug_CheckSaveBlock::
|
||||||
|
|||||||
24
dev_scripts/followers/rename_files_of_same_name.py
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
import glob
|
||||||
|
import re
|
||||||
|
import json
|
||||||
|
import os
|
||||||
|
import subprocess
|
||||||
|
|
||||||
|
# THIS IS A TEMPORARY SCRIPT MADE TO RENAME FILES WITH THE "FOLLOWER" NAME TO "OVERWORLD",
|
||||||
|
# AS THESE GRAPHICS CAN ALSO BE USED OUTSIDE THE FOLLOWER FEATURE.
|
||||||
|
#
|
||||||
|
# I'M SAVING IT HERE IN CASE IT'S NEEDED SOMEWHERE IN THE FUTURE, THOUGH TWEAKING MIGHT BE NEEDED.
|
||||||
|
# - AsparagusEduardo
|
||||||
|
|
||||||
|
def rename_files(dir, old, new):
|
||||||
|
for root, dirs, files in os.walk(dir):
|
||||||
|
for name in files:
|
||||||
|
if name.endswith(old):
|
||||||
|
originalName = os.path.join(root, name)
|
||||||
|
newName = originalName.replace(old, new)
|
||||||
|
print(originalName + " -> " + newName)
|
||||||
|
os.rename(originalName, newName)
|
||||||
|
|
||||||
|
rename_files("graphics/pokemon", 'follower.png', "overworld.png")
|
||||||
|
rename_files("graphics/pokemon", 'follow_normal.pal', "overworld_normal.pal")
|
||||||
|
rename_files("graphics/pokemon", 'follow_shiny.pal', "overworld_shiny.pal")
|
||||||
1
docs/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
book
|
||||||
1
docs/CHANGELOG.md
Normal file
@ -0,0 +1 @@
|
|||||||
|
{{#include ../CHANGELOG.md}}
|
||||||
1
docs/INSTALL.md
Normal file
@ -0,0 +1 @@
|
|||||||
|
{{#include ../INSTALL.md}}
|
||||||
1
docs/README.md
Normal file
@ -0,0 +1 @@
|
|||||||
|
{{#include ../README.md}}
|
||||||
53
docs/SUMMARY.md
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
# Summary
|
||||||
|
|
||||||
|
- [README](./README.md)
|
||||||
|
- [Installation](./INSTALL.md)
|
||||||
|
- [Setting up WSL1 (Legacy Portion)](./legacy_WSL1_INSTALL.md)
|
||||||
|
- [Changelog](./CHANGELOG.md)
|
||||||
|
- [1.8.x]()
|
||||||
|
- [Version 1.8.5](changelogs/1.8.x/1.8.5.md)
|
||||||
|
- [Version 1.8.4](changelogs/1.8.x/1.8.4.md)
|
||||||
|
- [Version 1.8.3](changelogs/1.8.x/1.8.3.md)
|
||||||
|
- [Version 1.8.2](changelogs/1.8.x/1.8.2.md)
|
||||||
|
- [Version 1.8.1](changelogs/1.8.x/1.8.1.md)
|
||||||
|
- [Version 1.8.0](changelogs/1.8.x/1.8.0.md)
|
||||||
|
|
||||||
|
- [1.7.x]()
|
||||||
|
- [Version 1.7.4](changelogs/1.7.x/1.7.4.md)
|
||||||
|
- [Version 1.7.3](changelogs/1.7.x/1.7.3.md)
|
||||||
|
- [Version 1.7.2](changelogs/1.7.x/1.7.2.md)
|
||||||
|
- [Version 1.7.1](changelogs/1.7.x/1.7.1.md)
|
||||||
|
- [Version 1.7.0](changelogs/1.7.x/1.7.0.md)
|
||||||
|
|
||||||
|
- [1.6.x]()
|
||||||
|
- [Version 1.6.2](changelogs/1.6.x/1.6.2.md)
|
||||||
|
- [Version 1.6.1](changelogs/1.6.x/1.6.1.md)
|
||||||
|
- [Version 1.6.0](changelogs/1.6.x/1.6.0.md)
|
||||||
|
|
||||||
|
- [1.5.x]()
|
||||||
|
- [Version 1.5.3](changelogs/1.5.x/1.5.3.md)
|
||||||
|
- [Version 1.5.2](changelogs/1.5.x/1.5.2.md)
|
||||||
|
- [Version 1.5.1](changelogs/1.5.x/1.5.1.md)
|
||||||
|
- [Version 1.5.0](changelogs/1.5.x/1.5.0.md)
|
||||||
|
|
||||||
|
- [1.4.x]()
|
||||||
|
- [Version 1.4.3](changelogs/1.4.x/1.4.3.md)
|
||||||
|
- [Version 1.4.2](changelogs/1.4.x/1.4.2.md)
|
||||||
|
- [Version 1.4.1](changelogs/1.4.x/1.4.1.md)
|
||||||
|
- [Version 1.4.0](changelogs/1.4.x/1.4.0.md)
|
||||||
|
|
||||||
|
- [1.3.x]()
|
||||||
|
- [Version 1.3.0](changelogs/1.3.x/1.3.0.md)
|
||||||
|
|
||||||
|
- [1.2.x]()
|
||||||
|
- [Version 1.2.0](changelogs/1.2.x/1.2.0.md)
|
||||||
|
|
||||||
|
- [1.1.x]()
|
||||||
|
- [Version 1.1.1](changelogs/1.1.x/1.1.1.md)
|
||||||
|
- [Version 1.1.0](changelogs/1.1.x/1.1.0.md)
|
||||||
|
|
||||||
|
- [1.0.x]()
|
||||||
|
- [Version 1.0.0](changelogs/1.0.x/1.0.0.md)
|
||||||
|
|
||||||
|
- [Pre-1.0.x]()
|
||||||
|
- [Version 0.9.0](changelogs/0.9.x/0.9.0.md)
|
||||||
14
docs/book.toml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
[book]
|
||||||
|
language = "en"
|
||||||
|
multilingual = false
|
||||||
|
src = "."
|
||||||
|
title = "pokeemerald-expansion"
|
||||||
|
|
||||||
|
[output.html]
|
||||||
|
git-repository-url = "https://github.com/rh-hideout/pokeemerald-expansion"
|
||||||
|
edit-url-template = "https://github.com/rh-hideout/pokeemerald-expansion/edit/master/docs/{path}"
|
||||||
|
site-url = "/pokeemerald-expansion/"
|
||||||
|
|
||||||
|
[preprocessor.fix_links]
|
||||||
|
command = "python3 fix_links.py"
|
||||||
|
after = [ "links" ]
|
||||||
219
docs/changelogs/1.8.x/1.8.5.md
Normal file
@ -0,0 +1,219 @@
|
|||||||
|
# Version 1.8.5
|
||||||
|
|
||||||
|
```md
|
||||||
|
## How to update
|
||||||
|
- If you haven't set up a remote, run the command `git remote add RHH https://github.com/rh-hideout/pokeemerald-expansion`.
|
||||||
|
- Once you have your remote set up, run the command `git pull RHH expansion/1.8.5`.
|
||||||
|
```
|
||||||
|
|
||||||
|
## 🌋 *IMPORTANT CHANGES AND REFACTORS* 🌋
|
||||||
|
* Small `ABILITYEFFECT_MOVES_BLOCK` refactor for readability by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/4635
|
||||||
|
* Removed redundant `partnerPicId` arguments in macros by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/4736
|
||||||
|
* Renamed some labels from "critical hit chance" to "critical hit odds" by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4751
|
||||||
|
* `sCriticalHitChance` => `sCriticalHitOdds`.
|
||||||
|
* `GetCritHitChance` => `GetCritHitOdds`.
|
||||||
|
* Renamed `BS_FAINTED_LINK_MULTIPLE_1/2` to `BS_FAINTED_MULTIPLE_1/2` by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4851
|
||||||
|
* Remove Duplicate ai code from battle_ai_util.c by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/4883
|
||||||
|
* `AI_CanBeBurned` is now handled by `CanBeBurned`.
|
||||||
|
* `CanSleep` renamed to `CanBeSlept`.
|
||||||
|
* `AI_CanSleep` is now handled by `CanBeSlept` and added `defAbility` argument.
|
||||||
|
* Added `defAbility` argument for `CanBePoisoned`.
|
||||||
|
* Added `defAbility` argument for `CanBeBurned`.
|
||||||
|
* Added `defAbility` argument for `CanBeParalyzed`.
|
||||||
|
* Got rid of hardcoded stat raise anim values by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4825
|
||||||
|
* Added parentheses to `SPECIES_EGG` macro to avoid issues by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4899
|
||||||
|
* `IsFinalStrikeEffect` uses effect instead of move by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4917
|
||||||
|
|
||||||
|
## 💥 *Softlock/Crash fixes* 💥
|
||||||
|
* Fixed Baton Pass hardlocking on Memento by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4773
|
||||||
|
* Fixed Revive in Double Battles causing a softlock by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4784
|
||||||
|
* Fixed Tectonic Rage causing a freeze after leveling up by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4787
|
||||||
|
* Fixed Smack Down's animation softlocking the game after around 13 uses by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4774
|
||||||
|
* Fixed softlock caused by using Covet/Thief on a Pokémon with Sticky Hold by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4885
|
||||||
|
|
||||||
|
## 🧬 General 🧬
|
||||||
|
### Added
|
||||||
|
* Added regional form breeding mechanics by @cawtds in https://github.com/rh-hideout/pokeemerald-expansion/pull/4695
|
||||||
|
* Convert docs/ folder to mdBook by @leo60228 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4684
|
||||||
|
* Go [here to see the new documentation page](https://rh-hideout.github.io/pokeemerald-expansion/). Feel free to contribute via PRs!
|
||||||
|
* Cleanup by @leo60228 in:
|
||||||
|
* https://github.com/rh-hideout/pokeemerald-expansion/pull/4711
|
||||||
|
* https://github.com/rh-hideout/pokeemerald-expansion/pull/4715
|
||||||
|
* https://github.com/rh-hideout/pokeemerald-expansion/pull/4716
|
||||||
|
* https://github.com/rh-hideout/pokeemerald-expansion/pull/4809
|
||||||
|
* Added forbidden status parameter to `FORM_CHANGE_ITEM_USE` by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/4738
|
||||||
|
* Used for Shaymin's form change via Gracidea being prevented if it's frozen or frostbitten.
|
||||||
|
### Fixed
|
||||||
|
* Fixed Poké Ball inheritance into actually working by @cawtds in https://github.com/rh-hideout/pokeemerald-expansion/pull/4695
|
||||||
|
* Daycare fixes by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4479
|
||||||
|
* Fixed Evolved mons not copying moves as they do not have their own egg move table.
|
||||||
|
* Fixed forms of the same species not copying egg moves from each other.
|
||||||
|
* Fixed Roamer Frostbite status not carrying over between battles by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4822
|
||||||
|
* Fixed Partners getting the wrong nature defined by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/4926
|
||||||
|
* Fixed Shop menu lists not properly displaying 6-digit item prices by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4929
|
||||||
|
|
||||||
|
## 🐉 Pokémon 🐉
|
||||||
|
### Changed
|
||||||
|
* PokeCommunity sprites batch (May) by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/4714
|
||||||
|
* Pawmi (Front by KingOfThe-X-Roads, back by Vent, QC by leParagon)
|
||||||
|
* Pawmo (By vent, qc by leParagon)
|
||||||
|
* Okidogi (Front by KingOfThe-X-Roads + by leParagon, back by Lykeron + QC by Alexandrev2. 0)
|
||||||
|
* Backported Hedara's Terapagos from `upcoming`.
|
||||||
|
* Updated wild held items to Gen 9 by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/4769
|
||||||
|
* Teddiursa (Common: None_> Honey)
|
||||||
|
* Bisharp (Rare: None -> Leader's Crest)
|
||||||
|
* All Oricorio: (Rare: Honey -> Corresponding Nectar)
|
||||||
|
* Toedscool, Toedscruel: (Common: Tiny Mushroom, Rare: Big Mushroom)
|
||||||
|
* All Paradox Mon: (Rare: Booster Energy)
|
||||||
|
### Fixed
|
||||||
|
* Fixed Tandemaus being able to evolve via Rare and Exp. Candies by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/4759
|
||||||
|
* Fixed Poltchageist not always producing Counterfeit form offspring by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/4812
|
||||||
|
* Fixed missing Minior Pokédex Entry by @cawtds in https://github.com/rh-hideout/pokeemerald-expansion/pull/4858
|
||||||
|
* Multiple Pokemon sprite fixes by @cafei-uh in https://github.com/rh-hideout/pokeemerald-expansion/pull/4887
|
||||||
|
- Fixed Charjabug shiny + cleaned up its front sprite
|
||||||
|
- Changed Lurantis back sprite to better match its ingame model
|
||||||
|
- Fixed Bounsweet shiny not changing the color of its lower body
|
||||||
|
- Brightened the white color of Bruxish shiny + tweaked its sprites to accommodate the change
|
||||||
|
* Fixed `P_UPDATED_ABILITIES` not reverting newly gained abilities in Gens 4/6/7 by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/4922
|
||||||
|
|
||||||
|
## ⚔️ Battle General ⚔️ ##
|
||||||
|
### Fixed
|
||||||
|
* Fixed Dynamax HP not reverting upon fainting by @WillKolada in https://github.com/rh-hideout/pokeemerald-expansion/pull/4681
|
||||||
|
* Fixed the partner's palette from shifting when throwing a Poké Ball by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/4736
|
||||||
|
* Fixed shiny value not being updated in battle, causing the palette to reset when reloading the sprites by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4788
|
||||||
|
* Fixed `B_VAR_STARTING_STATUS` every following terrains infinite by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4795
|
||||||
|
* Fixed Gen 7+ confusion self hurt chance from `1 in 3` to `33%` by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4831
|
||||||
|
* Fixed caught wild pokemon not restoring their used held item by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/4803
|
||||||
|
* Fixed AI's right slot switching-in too early by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4851
|
||||||
|
* Ported post-KO test improvements from closed PR by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/4859
|
||||||
|
* Fixed how switch-in effects are played out after multiple faints in the same turn by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4864
|
||||||
|
* Fixed Megas gaining abilities after fainting by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4873
|
||||||
|
|
||||||
|
## 🤹 Moves 🤹
|
||||||
|
### Fixed
|
||||||
|
* Added missing `ignoreSubstitute` flags for Defog (only in Gen 4), Torment and Powder by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/4623
|
||||||
|
* Fixed Grassy Glide granting priority if it's converted to Max Move by @PhallenTree in https://github.com/rh-hideout/pokeemerald-expansion/pull/4659
|
||||||
|
* Fixed Rampage moves not confusing the user if it's canceled by Protect and Type immunity by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4722
|
||||||
|
* Fixed Tar shot the target always be to Fire regardless of existing types by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4756
|
||||||
|
* Fixed Shell Side Arm by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/4753
|
||||||
|
* Cleanup by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4806
|
||||||
|
* Fixed Body press using physical Defense stat changes instead of Sp. Defense stat stages in Wonder Room (still uses physical defense stat) by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4792
|
||||||
|
* Fixed Relic Song playing the transforming animation for species other than Meloetta by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4799
|
||||||
|
* Fixed Pursuit not being locked by Choice Items when used on an opponent switching out by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4801
|
||||||
|
* Fixed Encore's effect lasting only 2 turns if it was used after the opponent uses the move in the same turn by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4802
|
||||||
|
* Fixed Spectral Thief playing stat raise animation when the user has Contrary by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4824
|
||||||
|
* Fixed Fury Cutter scaling up to 640 power by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4846
|
||||||
|
* Fixed moves with the `ignoresTargetAbility` flag ignoring the attacker's own ability by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4855
|
||||||
|
* Fixed incorrect move names by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/4854
|
||||||
|
* Floral Healing
|
||||||
|
* Jungle Healing
|
||||||
|
* Oceanic Operetta
|
||||||
|
* Fixed Grassy Terrain not healing on the final turn of its duration by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/4903
|
||||||
|
* Fixed Shed Tail's HP reduction rounding down instead of up by @kleeenexfeu in https://github.com/rh-hideout/pokeemerald-expansion/pull/4913
|
||||||
|
* Fixed Bitter Malice's description, which used to imply that it didn't always lower the opponent's Attack by @kleeenexfeu in https://github.com/rh-hideout/pokeemerald-expansion/pull/4933
|
||||||
|
* Fixed Flame Burst's adjacent damage not bypassing Substitute by @hedara90 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4939
|
||||||
|
|
||||||
|
## 🎭 Abilities 🎭
|
||||||
|
### Added
|
||||||
|
* Added missing Gen 3-4 config for Lightning Rod/Storm Drain (`B_REDIRECT_ABILITY_IMMUNITY`) by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/4920
|
||||||
|
### Fixed
|
||||||
|
* Fixed Dancer issues @PhallenTree in https://github.com/rh-hideout/pokeemerald-expansion/pull/4638
|
||||||
|
* Fixed Dancer triggering if the move user flinches when it was going to use a dance move
|
||||||
|
* Fixed Dancer not triggering if a previous Dancer flinches.
|
||||||
|
* Fixed Dazzling, Queenly Majesty and Armor Tail not protecting partners from priority moves by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/4635
|
||||||
|
* Cleanup by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/4647
|
||||||
|
* Fixed Burning Bulwark's incorrect message by @PhallenTree in https://github.com/rh-hideout/pokeemerald-expansion/pull/4659
|
||||||
|
* Fixed Disguise's `breakable` flag (ignorable by Mold Breaker) by @AgustinGDLV in https://github.com/rh-hideout/pokeemerald-expansion/pull/4666
|
||||||
|
* Fixed redundant call to `IsBattlerWeatherAffected` Dry Skin's checks by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4675
|
||||||
|
* Fixed Guard Dog blocking U-Turn/Volt Switch/Flip Turn instead of Roar/Circle Throw/Dragon Tail by @PhallenTree in https://github.com/rh-hideout/pokeemerald-expansion/pull/4690
|
||||||
|
* Fixed some abilities preventing stat dropping move effects when used on self by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4696
|
||||||
|
* Hyper Cutter (Attack)
|
||||||
|
* Big Pecks (Defense)
|
||||||
|
* Keen Eye/Illuminate (Accuracy)
|
||||||
|
* Fixed Mummy and Lingering Aroma not working at all by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4731
|
||||||
|
* Fixed Berserk, Anger Shell, Wimp Out, Emergency Exit HP threshold (more than half HP instead of half HP and more) by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4724
|
||||||
|
* Fixed Mycelium Might affecting every battler on the field instead of just the ability holder by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4740
|
||||||
|
* Fixed Skill Link ignoring Gastro Acid/Neutralizing Gas by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4746
|
||||||
|
* Fixed Own Tempo ignoring Gastro Acid/Neutralizing Gas when checking for Berserk Gene by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4746
|
||||||
|
* Fixed Soul-Heart changing stats of wrong battler, which caused Mirror Herb to behave incorrectly by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4785
|
||||||
|
* Fixed Poison Touch trigger chance from `1 in 3` to `30%` by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4831
|
||||||
|
* Fixed Cursed Body trigger chance from `1 in 3` to `30%` by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4831
|
||||||
|
* Fixed Comatose not being supressed if it's obtained by a Pokémon Transforming by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4852
|
||||||
|
* Fixed Supersweet Syrup0s description by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/4902
|
||||||
|
|
||||||
|
## 🧶 Items 🧶
|
||||||
|
### Changed
|
||||||
|
* Allowed rematches to occur if I_VS_SEEKER_CHARGING isn't enabled by @fdeblasio in https://github.com/rh-hideout/pokeemerald-expansion/pull/4866
|
||||||
|
### Fixed
|
||||||
|
* Fixed Honey altering tiles when used by @cawtds in https://github.com/rh-hideout/pokeemerald-expansion/pull/4703
|
||||||
|
* Fixed potential undefined behaviour when using escape rope by @cawtds in https://github.com/rh-hideout/pokeemerald-expansion/pull/4705
|
||||||
|
* Fixed Hyper Potion's price not respecting `I_PRICE` by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/4737
|
||||||
|
* Fixed Ability Shield not protecting against multiple effects by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4740
|
||||||
|
* Mold Breaker-type abilities.
|
||||||
|
* Mycelium Might.
|
||||||
|
* Moves that bypass abilities (eg. Sunsteel Stike).
|
||||||
|
|
||||||
|
## 🤖 Battle AI 🤖
|
||||||
|
### Changed
|
||||||
|
* Add checks for `EFFECT_POLTERGEIST` and `EFFECT_FIRST_TURN_ONLY` to `IsDamageMoveUnusable` by @iriv24 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4693
|
||||||
|
### Fixed
|
||||||
|
* Fixed AI going for speed control even when it's faster than the opponet by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/4630
|
||||||
|
* Fixed AI not considering `EFFECT_RAGING_BULL` similarly to `EFFECT_BRICK_BREAK` by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/4682
|
||||||
|
* Fixed AI getting incorrect calculations due to using `gCurrentMove` in `CalcCritChanceStageArgs` by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/4687
|
||||||
|
* Fixed AI not recording Battle Armor or Shell Armor by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4751
|
||||||
|
* Fixed AI not considering guaranteed crits by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4751
|
||||||
|
* Fixed AI not properly avoiding contact against Rocky Helmet/Rough Skin by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4779
|
||||||
|
* Fixed AI not recognising Volt Absorb/Flash Fire by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4781
|
||||||
|
* Fixed AI thinking that Defiant/Competitive triggers off partner's moves in doubles by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4786
|
||||||
|
* Fixed AI using `TRUE` (Stench) when calculating if it's worth using Swagger or Flatter on its partner by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4786
|
||||||
|
* Fixed passing hold effect instead of ability in one call of ShouldSetSandstorm by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4789
|
||||||
|
|
||||||
|
## 🧪 Test Runner 🧪
|
||||||
|
### Added
|
||||||
|
* Added `FORCE_MOVE_ANIM` macro to force an animation to run in headless mode by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4774
|
||||||
|
* Usage: `FORCE_MOVE_ANIM(TRUE)` at the beginning of the test and `FORCE_MOVE_ANIM(FALSE)` at the end.
|
||||||
|
* Added test to prevent species from having different evolution tracker methods by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/4771
|
||||||
|
* Added test for missing Pokédex Entries by @cawtds in https://github.com/rh-hideout/pokeemerald-expansion/pull/4858
|
||||||
|
* Added missing Move Effect TODO tests - Volume B by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/4682
|
||||||
|
* Added missing tests
|
||||||
|
* Berserk by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4724
|
||||||
|
* Clear Body by @Pawkkie in https://github.com/rh-hideout/pokeemerald-expansion/pull/4685
|
||||||
|
* Cleanup by @Pawkkie in:
|
||||||
|
* https://github.com/rh-hideout/pokeemerald-expansion/pull/4797
|
||||||
|
* https://github.com/rh-hideout/pokeemerald-expansion/pull/4837
|
||||||
|
* Anger Point and Moxie by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4811
|
||||||
|
* Cursed Body, Poison Touch and Confusion status by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4831
|
||||||
|
* Corrosion, Acrobatics, Hone Claws and Hurricane by @Pawkkie in https://github.com/rh-hideout/pokeemerald-expansion/pull/4708
|
||||||
|
* Added AI tests for avoiding using status moves on Pokémon with abilities that prevent them by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/4883
|
||||||
|
* Added Own Tempo/Mold Breaker test by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/4883
|
||||||
|
### Changed
|
||||||
|
* Multiple changes by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/4682
|
||||||
|
* Renamed some Baton Pass-related tests so that their prefix becomes Baton Pass.
|
||||||
|
* Eg. `Aqua Ring can be Baton Passed` becomes `Baton Pass passes Aqua Ring's effect`.
|
||||||
|
* Expanded Belch's test to show that it doesn't need to eat a berry before each use of the move.
|
||||||
|
* Unconfirmed interactions added to the specific files.
|
||||||
|
* Split `EFFECT_RAGING_BULL` from `EFFECT_BRICK_BREAK`'s file.
|
||||||
|
* Moved Grassy Terrain/Earthquake test to Earthquake file.
|
||||||
|
* Write new/Fix old tests for post-ko switch scenarios by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4856
|
||||||
|
### Fixed
|
||||||
|
* Fixed issues when building tests with agbcc by @u8-Salem in https://github.com/rh-hideout/pokeemerald-expansion/pull/4689
|
||||||
|
* Fixed incorrect `ASSUME`s in 2 test rampage tests by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4722
|
||||||
|
* Fixed AI ability guessing in tests by @cawtds in https://github.com/rh-hideout/pokeemerald-expansion/pull/4764
|
||||||
|
* Fixed Pokemon in tests not being male by default by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/4766
|
||||||
|
* Fixed Plasma Fists/Pixilate interaction test by @Sneed69 in https://github.com/rh-hideout/pokeemerald-expansion/pull/4865
|
||||||
|
* Fixed wrong palette in player backsprite in recorded battle by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/4875
|
||||||
|
|
||||||
|
## 📦 Pret merges 📦
|
||||||
|
* Merge in pret 189d542 by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/4832
|
||||||
|
* Fix Steven partner battle post-battle script by @Jaizu in https://github.com/pret/pokeemerald/pull/2001
|
||||||
|
* Pret merge (20th of June) by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/4845
|
||||||
|
- [366f8b3](https://github.com/pret/pokeemerald/commit/366f8b33a38010f47886f70e52a4fa6dd306a4c4) NixOS install instructions by @leo60228
|
||||||
|
- [c0d630e](https://github.com/pret/pokeemerald/commit/c0d630ee6304df61a5304942386308a872aeb504) Add support for LF line endings to gbagfx by @nashalexander
|
||||||
|
* Pret Merge (5th of July) by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/4915
|
||||||
|
- [pret#2006](https://github.com/pret/pokeemerald/pull/2006/) (manually reverted)
|
||||||
|
- [pret#2009](https://github.com/pret/pokeemerald/pull/2009/) Decode unused JP text in `berry_blender.c`
|
||||||
|
- [pret#2012](https://github.com/pret/pokeemerald/pull/2012/) Berry blender's `Task_HandleOpponent` small fixes
|
||||||
|
|
||||||
|
**Full Changelog**: https://github.com/rh-hideout/pokeemerald-expansion/compare/expansion/1.8.4...expansion/1.8.5
|
||||||
|
|
||||||
|
<!--Last PR: 4939-->
|
||||||
@ -6,7 +6,7 @@
|
|||||||
- Once you have your remote set up, run the command `git pull RHH expansion/1.Y.Z`.
|
- Once you have your remote set up, run the command `git pull RHH expansion/1.Y.Z`.
|
||||||
```
|
```
|
||||||
|
|
||||||
## 🌋 *IMPORTANT CHANGES* 🌋
|
## 🌋 *IMPORTANT CHANGES AND REFACTORS* 🌋
|
||||||
* N/A
|
* N/A
|
||||||
|
|
||||||
## 💥 *Softlock/Crash fixes* 💥
|
## 💥 *Softlock/Crash fixes* 💥
|
||||||
|
|||||||
51
docs/fix_links.py
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
# workarounds to avoid changing current directory structure
|
||||||
|
# autolink logic based on https://github.com/zopieux/py-gfm/blob/fd7b33ed138d240d24dfb659acff7d4ce3f43745/gfm/autolink.py
|
||||||
|
|
||||||
|
import json
|
||||||
|
import sys
|
||||||
|
import re
|
||||||
|
|
||||||
|
URL_RE = re.compile(
|
||||||
|
r"(```(?s:.)+?```|`.+?`|<.+?>)|"
|
||||||
|
r"\b((?:(?i:ftp|https?)://|(?i:www)\d{0,3}[.])(?:[^\s()<>]+|"
|
||||||
|
r"\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()"
|
||||||
|
r"<>]+\)))*\)|[^\s`!()\[\]{};:" + r"'" + r'".,<>?«»“”‘’*]))'
|
||||||
|
)
|
||||||
|
PROTOCOL_RE = re.compile(r"^(?i:ftp|https?)://")
|
||||||
|
|
||||||
|
ANCHOR_RE = re.compile(r"(\]\((?:[^)#]+\.md)?#)([^)]+\))")
|
||||||
|
|
||||||
|
def handle_url(m):
|
||||||
|
code = m.group(1)
|
||||||
|
if code:
|
||||||
|
return code
|
||||||
|
href = m.group(2)
|
||||||
|
if not PROTOCOL_RE.match(href):
|
||||||
|
href = "http://%s" % href
|
||||||
|
return f'<{href}>'
|
||||||
|
|
||||||
|
def handle_anchor(m):
|
||||||
|
page = m.group(1)
|
||||||
|
anchor = m.group(2)
|
||||||
|
return page + anchor.lower()
|
||||||
|
|
||||||
|
def proc_items(items):
|
||||||
|
for item in items:
|
||||||
|
if 'Chapter' in item:
|
||||||
|
s = item['Chapter']['content']
|
||||||
|
s = s.replace('](README.md)', '](./)')
|
||||||
|
s = s.replace('](/INSTALL.md', '](INSTALL.md')
|
||||||
|
s = s.replace('](docs/', '](')
|
||||||
|
s = URL_RE.sub(handle_url, s)
|
||||||
|
item['Chapter']['content'] = ANCHOR_RE.sub(handle_anchor, s)
|
||||||
|
proc_items(item['Chapter']['sub_items'])
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
if len(sys.argv) > 1:
|
||||||
|
if sys.argv[1] == "supports":
|
||||||
|
sys.exit(0)
|
||||||
|
|
||||||
|
context, book = json.load(sys.stdin)
|
||||||
|
proc_items(book['sections'])
|
||||||
|
|
||||||
|
print(json.dumps(book))
|
||||||
@ -38,4 +38,4 @@
|
|||||||
source /etc/profile.d/devkit-env.sh
|
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-expansion-WSL1).
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 314 B After Width: | Height: | Size: 6.8 KiB |
|
Before Width: | Height: | Size: 275 B After Width: | Height: | Size: 7.3 KiB |
19
graphics/map_popup/bw/black.pal
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
255 255 255
|
||||||
|
84 85 89
|
||||||
|
0 0 0
|
||||||
|
238 230 238
|
||||||
|
189 180 197
|
||||||
|
139 139 164
|
||||||
|
90 90 123
|
||||||
|
41 49 90
|
||||||
|
27 27 27
|
||||||
|
40 40 40
|
||||||
|
51 51 51
|
||||||
|
62 62 62
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
BIN
graphics/map_popup/bw/bw_primary.png
Normal file
|
After Width: | Height: | Size: 9.1 KiB |
BIN
graphics/map_popup/bw/bw_secondary.png
Normal file
|
After Width: | Height: | Size: 9.1 KiB |
19
graphics/map_popup/bw/white.pal
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
0 0 0
|
||||||
|
255 255 255
|
||||||
|
0 0 0
|
||||||
|
158 158 158
|
||||||
|
0 0 0
|
||||||
|
238 230 238
|
||||||
|
189 180 197
|
||||||
|
139 139 164
|
||||||
|
90 90 123
|
||||||
|
41 49 90
|
||||||
|
228 228 228
|
||||||
|
215 215 215
|
||||||
|
204 204 204
|
||||||
|
193 193 193
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 671 B After Width: | Height: | Size: 671 B |
|
Before Width: | Height: | Size: 821 B After Width: | Height: | Size: 821 B |
|
Before Width: | Height: | Size: 782 B After Width: | Height: | Size: 782 B |
|
Before Width: | Height: | Size: 970 B After Width: | Height: | Size: 970 B |
|
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 977 B After Width: | Height: | Size: 977 B |
|
Before Width: | Height: | Size: 963 B After Width: | Height: | Size: 963 B |
|
Before Width: | Height: | Size: 943 B After Width: | Height: | Size: 943 B |
|
Before Width: | Height: | Size: 761 B After Width: | Height: | Size: 761 B |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 633 B After Width: | Height: | Size: 633 B |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 777 B After Width: | Height: | Size: 777 B |
|
Before Width: | Height: | Size: 981 B After Width: | Height: | Size: 981 B |
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
|
Before Width: | Height: | Size: 664 B After Width: | Height: | Size: 664 B |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 908 B After Width: | Height: | Size: 908 B |
|
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |