mirror of
https://github.com/bryanthaboi/gen1recomp.git
synced 2026-08-18 03:35:56 +02:00
CLOSES #1181, CLOSES #1212, CLOSES #1214, CLOSES #1224, CLOSES #1230, CLOSES #1249, CLOSES #1271, CLOSES #1272, CLOSES #1273, CLOSES #1298, CLOSES #1305, CLOSES #1307, CLOSES #1318, CLOSES #1328, CLOSES #1330, CLOSES #1331, CLOSES #1333, CLOSES #1334, CLOSES #1335, CLOSES #1340, CLOSES #1345, CLOSES #1346, CLOSES #1360, CLOSES #1362 (#1395)
* CLOSES #1181, CLOSES #1212, CLOSES #1214, CLOSES #1224, CLOSES #1230, CLOSES #1249, CLOSES #1271, CLOSES #1272, CLOSES #1273, CLOSES #1298, CLOSES #1305, CLOSES #1307, CLOSES #1318, CLOSES #1328, CLOSES #1330, CLOSES #1331, CLOSES #1333, CLOSES #1334, CLOSES #1335, CLOSES #1340, CLOSES #1345, CLOSES #1346, CLOSES #1360, CLOSES #1362 * conv
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
# Mew Starter Example
|
||||
|
||||
This example changes only the Oak's Lab Charmander gift into a level 20 Mew
|
||||
nicknamed `HOGHEAD`. It also replaces Mew's front and back battle sprites with
|
||||
inverted copies.
|
||||
|
||||
Generate the bundled images from an imported cache with:
|
||||
|
||||
```sh
|
||||
python3 tools/generate_example_mod_sprite.py \
|
||||
"$HOME/Library/Application Support/LOVE/pokemon-love2d/assets/generated" \
|
||||
mods/example_mew_starter
|
||||
```
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 318 B |
Binary file not shown.
|
After Width: | Height: | Size: 687 B |
@@ -0,0 +1,26 @@
|
||||
-- Example native mod. It demonstrates both a runtime event and a content
|
||||
-- override without requiring any private engine module.
|
||||
return function(mod)
|
||||
local mew = mod.content.pokemon:get("MEW")
|
||||
assert(mew, "Mew is missing from the imported base data")
|
||||
|
||||
-- Keep every vanilla Mew field, changing only the two battle sprite paths.
|
||||
local invertedMew = {}
|
||||
for key, value in pairs(mew) do invertedMew[key] = value end
|
||||
invertedMew.spriteFront = mod.path .. "/assets/mew_front_inverted.png"
|
||||
invertedMew.spriteBack = mod.path .. "/assets/mew_back_inverted.png"
|
||||
mod.content.pokemon:override("MEW", invertedMew)
|
||||
|
||||
mod.events:on("pokemon.before_give", function(gift)
|
||||
-- Only change the Oak's Lab Charmander gift; wild encounters and other
|
||||
-- story gifts remain vanilla.
|
||||
local map = gift.ctx.overworld and gift.ctx.overworld.map
|
||||
if gift.species == "CHARMANDER" and map and map.id == "OAKS_LAB"
|
||||
and not gift.ctx.save.flags.EVENT_GOT_STARTER then
|
||||
gift.species = "MEW"
|
||||
gift.level = 20
|
||||
gift.nickname = "HOGHEAD"
|
||||
mod.log:info("replaced Oak's Lab Charmander starter with level 20 Mew")
|
||||
end
|
||||
end)
|
||||
end
|
||||
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"id": "example_mew_starter",
|
||||
"name": "Mew Starter Example",
|
||||
"version": "1.0.0",
|
||||
"entry": "main.lua",
|
||||
"category": "GAMEPLAY",
|
||||
"priority": 100,
|
||||
"dependencies": [],
|
||||
"optional_dependencies": [],
|
||||
"conflicts": [],
|
||||
"description": "Turns the Oak's Lab Charmander gift into a level 20 Mew with inverted battle sprites."
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
-- Sharing metadata (25-community-and-ecosystem.md 3.2). Read by tooling
|
||||
-- and the manager detail pane; never by the loader's merge.
|
||||
--
|
||||
-- Gallery entry #0, the legacy example. Its manifest stays api 1 with
|
||||
-- category GAMEPLAY on purpose: it is the compatibility proof that a mod
|
||||
-- written before manifest v2 keeps loading unchanged. The v2 examples
|
||||
-- live in mods/examples/.
|
||||
return {
|
||||
summary = "Oak's Charmander gift becomes a level 20 Mew with inverted sprites.",
|
||||
author = "Pokemon Gen 1 Recompilation Project",
|
||||
contact = "https://github.com/bryanthaboi/gen1recomp",
|
||||
tags = { "beginner", "cosmetic", "data-only", "legacy" },
|
||||
differences = {
|
||||
changed = {
|
||||
"the Oak's Lab starter gift becomes a level 20 Mew nicknamed HOGHEAD",
|
||||
"MEW's front and back battle sprites point at inverted copies",
|
||||
},
|
||||
added = {},
|
||||
known = {
|
||||
"assets/ is empty until tools/generate_example_mod_sprite.py runs "
|
||||
.. "against an imported cache",
|
||||
"api 1: uses override where a v2 mod would use patch",
|
||||
},
|
||||
},
|
||||
credits = {
|
||||
{ who = "pret/pokered", for_ = "the Mew sprites the local generator inverts" },
|
||||
},
|
||||
compat = { engine = ">=1.0.0 <2.0.0", modApi = 1 },
|
||||
}
|
||||
Reference in New Issue
Block a user