Skip to content

Commit 33719ab

Browse files
authored
Adds Pixelmon's Pokedex datapack types (#791)
* Pixelmon datapack types * Fix some syntax errors & add NPC Presets * add pokedex datapack
1 parent d9d2863 commit 33719ab

File tree

3 files changed

+119
-0
lines changed

3 files changed

+119
-0
lines changed

public/mcdoc/pixelmon.mcdoc

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1304,3 +1304,92 @@ dispatch minecraft:resource[pixelmon:npc_preset] to struct NPCPreset {
13041304
party: SelectorType<TeamSupplier>,
13051305
goals: SelectorType<Goals>,
13061306
}
1307+
1308+
enum(string) PokedexRegistrationStatus {
1309+
UNKNOWN = "UNKNOWN",
1310+
SEEN = "SEEN",
1311+
CAUGHT = "CAUGHT",
1312+
}
1313+
1314+
enum(string) Gender {
1315+
MALE = "MALE",
1316+
FEMALE = "FEMALE",
1317+
NONE = "NONE",
1318+
}
1319+
1320+
dispatch minecraft:resource[pixelmon:pokedex_trigger] to struct PokedexTrigger {
1321+
events: [#[id(registry="pixelmon:")] string],
1322+
condition: InteractionCondition,
1323+
resulting_states: [PokedexRegistrationStatus],
1324+
player_context_key: string,
1325+
pokemon_context_key: string,
1326+
}
1327+
1328+
struct PokemonBase {
1329+
species: int,
1330+
form: string,
1331+
gender: Gender,
1332+
palette: string
1333+
}
1334+
1335+
dispatch minecraft:resource[pixelmon:pokedex_region] to struct Region {
1336+
generation_id: int,
1337+
name: Text,
1338+
starters: [PokemonBase],
1339+
pokemon: [int],
1340+
}
1341+
1342+
enum(string) PokemonProviderType {
1343+
ALL = "pixelmon:all",
1344+
ALL_WITH_PALETTE_TAG = "pixelmon:all_with_palette_tag",
1345+
DEX = "pixelmon:dex",
1346+
}
1347+
1348+
dispatch pixelmon:pokemon_provider_type[pixelmon:all] to struct {}
1349+
1350+
dispatch pixelmon:pokemon_provider_type[pixelmon:all_with_palette_tag] to struct {
1351+
tag: string
1352+
}
1353+
1354+
struct Dex {
1355+
dex: int,
1356+
form?: string,
1357+
palette?: string,
1358+
gender?: Gender,
1359+
}
1360+
1361+
dispatch pixelmon:pokemon_provider_type[pixelmon:dex] to struct {
1362+
dex_numbers: [Dex]
1363+
}
1364+
1365+
struct PokemonProvider {
1366+
type: #[id] PokemonProviderType,
1367+
...pixelmon:pokemon_provider_type[[type]]
1368+
}
1369+
1370+
enum(string) PokemonPredicateType {
1371+
ANY = "pixelmon:any",
1372+
SPEC = "pixelmon:spec",
1373+
}
1374+
1375+
dispatch pixelmon:pokemon_predicate_type[pixelmon:any] to struct {}
1376+
1377+
dispatch pixelmon:pokemon_predicate_type[pixelmon:spec] to struct {
1378+
spec: string,
1379+
}
1380+
1381+
struct PokemonPredicate {
1382+
type: #[id] PokemonPredicateType,
1383+
...pixelmon:pokemon_predicate_type[[type]]
1384+
}
1385+
1386+
dispatch minecraft:resource[pixelmon:pokedex] to struct Pokedex {
1387+
name: Text,
1388+
/// Used to determine which order the pokedexes appear in the survival tab
1389+
priority: int,
1390+
primary_color: Color,
1391+
secondary_color: Color,
1392+
text_color: Color,
1393+
pokemon: PokemonProvider,
1394+
accetpance_test: PokemonPredicate,
1395+
}

src/config.json

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -959,6 +959,33 @@
959959
"dependency": "pixelmon",
960960
"wiki": "https://pixelmonmod.com/wiki/",
961961
"minVersion": "1.21.1"
962+
},
963+
{
964+
"id": "pixelmon:pokedex_trigger",
965+
"url": "pixelmon/pokemon/pokedex/trigger",
966+
"path": "pixelmon/pokemon/pokedex/trigger",
967+
"tags": ["partners"],
968+
"dependency": "pixelmon",
969+
"wiki": "https://pixelmonmod.com/wiki/",
970+
"minVersion": "1.21.1"
971+
},
972+
{
973+
"id": "pixelmon:pokedex_region",
974+
"url": "pixelmon/pokemon/pokedex/region",
975+
"path": "pixelmon/pokemon/pokedex/region",
976+
"tags": ["partners"],
977+
"dependency": "pixelmon",
978+
"wiki": "https://pixelmonmod.com/wiki/",
979+
"minVersion": "1.21.1"
980+
},
981+
{
982+
"id": "pixelmon:pokedex",
983+
"url": "pixelmon/pokemon/pokedex/pokedex",
984+
"path": "pixelmon/pokemon/pokedex/pokedex",
985+
"tags": ["partners"],
986+
"dependency": "pixelmon",
987+
"wiki": "https://pixelmonmod.com/wiki/",
988+
"minVersion": "1.21.1"
962989
}
963990
],
964991
"legacyGuides": [

src/locales/en.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,9 @@
147147
"generator.pixelmon:research": "Pixelmon Research",
148148
"generator.pixelmon:research_trigger": "Pixelmon Research Trigger",
149149
"generator.pixelmon:npc_preset": "Pixelmon NPC Preset",
150+
"generator.pixelmon:pokedex": "Pokedex",
151+
"generator.pixelmon:pokedex_trigger": "Pokedex Trigger",
152+
"generator.pixelmon:pokedex_region": "Region",
150153
"generator.trial_spawner": "Trial Spawner",
151154
"generator.trim_material": "Trim Material",
152155
"generator.trim_pattern": "Trim Pattern",

0 commit comments

Comments
 (0)