Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a new UI to manage natures and changes the data structure of the natures #386

Draft
wants to merge 9 commits into
base: develop
Choose a base branch
from
43 changes: 38 additions & 5 deletions assets/i18n/en/database_natures.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,40 @@
{
"attack": "Atk",
"defense": "Dfe",
"special_attack": "Ats",
"special_defense": "Dfs",
"speed": "Spd"
"nature": "Nature",
"atk": "Atk",
"dfe": "Dfe",
"ats": "Ats",
"dfs": "Dfs",
"spd": "Spd",
"new": "New nature",
"delete": "Delete this nature",
"deleting": "Deleting",
"stats": "Statistics",
"changing_stats": "Changing statistics",
"changing_stat_atk": "Attack",
"changing_stat_dfe": "Defense",
"changing_stat_ats": "Special Attack",
"changing_stat_dfs": "Special Defense",
"changing_stat_spd": "Speed",
"flavors": "Flavors",
"liked_flavor": "Liked flavor",
"disliked_flavor": "Disliked flavor",
"spicy": "Spicy",
"dry": "Dry",
"sweet": "Sweet",
"bitter": "Bitter",
"sour": "Sour",
"none": "None",
"information": "Information",
"name": "Name",
"symbol": "Identifier",
"create_nature": "Add the nature",
"cancel": "Cancel",
"example_db_symbol": "Ex: adamant",
"incorrect_format": "Incorrect identifier format.",
"db_symbol_already_used": "This identifier is already used.",
"fields_asterisk_required": "Fields with an asterisk are required",
"deletion_of": "Deletion of {{nature}}",
"deletion_message": "You are about to permanently delete the nature «\u00a0{{nature}}\u00a0».",
"nature_deleted": "Nature deleted",
"example_name": "Ex: Adamant"
}
2 changes: 2 additions & 0 deletions assets/i18n/en/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import dashboard_game_options from './dashboard_game_options.json';
import database_abilities from './database_abilities.json';
import database_items from './database_items.json';
import database_moves from './database_moves.json';
import database_natures from './database_natures.json';
import database_pokemon from './database_pokemon.json';
import database_types from './database_types.json';
import database_groups from './database_groups.json';
Expand Down Expand Up @@ -63,6 +64,7 @@ export default {
database_abilities,
database_items,
database_moves,
database_natures,
database_pokemon,
database_types,
database_groups,
Expand Down
1 change: 1 addition & 0 deletions assets/i18n/en/submenu_database.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
"quests": "Quests",
"zones": "Zones",
"dex": "Pokédex",
"natures": "Natures",
"save_the_modifications": "Save the modifications",
"edition": "Edit",
"aide": "Help",
Expand Down
43 changes: 38 additions & 5 deletions assets/i18n/fr/database_natures.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,40 @@
{
"attack": "Atk",
"defense": "Def",
"special_attack": "Ats",
"special_defense": "Dfs",
"speed": "Vit"
"nature": "Nature",
"atk": "Atq",
"dfe": "Def",
"ats": "Ats",
"dfs": "Dfs",
"spd": "Vit",
"new": "Nouvelle nature",
"delete": "Supprimer cette nature",
"deleting": "Suppression",
"stats": "Statistiques",
"changing_stats": "Modification des statistiques",
"changing_stat_atk": "Attaque",
"changing_stat_dfe": "Défense",
"changing_stat_ats": "Attaque spéciale",
"changing_stat_dfs": "Défense spéciale",
"changing_stat_spd": "Vitesse",
"flavors": "Saveurs",
"liked_flavor": "Goût préféré",
"disliked_flavor": "Goût détesté",
"spicy": "Épicé",
"dry": "Sec",
"sweet": "Sucré",
"bitter": "Amer",
"sour": "Acide",
"none": "Aucun",
"information": "Informations",
"name": "Nom",
"symbol": "Identifiant",
"create_nature": "Ajouter la nature",
"cancel": "Annuler",
"example_db_symbol": "Ex : adamant",
"incorrect_format": "Format de l'identifiant incorrect.",
"db_symbol_already_used": "Cet identifiant est déjà utilisé.",
"fields_asterisk_required": "Les champs avec un astérisque sont requis",
"deletion_of": "Suppression de {{nature}}",
"deletion_message": "Vous êtes sur le point de supprimer définitivement la nature «\u00a0{{nature}}\u00a0».",
"nature_deleted": "Nature supprimée",
"example_name": "Ex : Rigide"
}
1 change: 1 addition & 0 deletions assets/i18n/fr/submenu_database.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
"quests": "Quêtes",
"zones": "Zones",
"dex": "Pokédex",
"natures": "Natures",
"save_the_modifications": "Sauvegarder les modifications",
"edition": "Édition",
"aide": "Aide",
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "pokemon-studio",
"productName": "Pokémon Studio",
"description": "Pokémon Studio is a monster taming game editor which helps you to bring your ideas to life, in just a few clicks.",
"version": "2.3.0",
"version": "2.4.0",
"main": "./.webpack/main",
"license": "SEE LICENSE IN LICENSE.md",
"author": {
Expand Down
1 change: 1 addition & 0 deletions src/@types/react-i18n.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ import database_zones from '../../assets/i18n/en/database_zones.json';
import database_dex from '../../assets/i18n/en/database_dex.json';
import database_maplinks from '../../assets/i18n/en/database_maplinks.json';
import database_maps from '../../assets/i18n/en/database_maps.json';
import database_natures from '../../assets/i18n/en/database_natures.json';
import homepage from '../../assets/i18n/en/homepage.json';
import main_menu from '../../assets/i18n/en/main_menu.json';
import select from '../../assets/i18n/en/select.json';
Expand Down
43 changes: 23 additions & 20 deletions src/GlobalStateProvider.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,36 +2,36 @@ import { useState } from 'react';
import { createContainer } from 'react-tracked';
import { SavingConfigMap, SavingMap, SavingTextMap } from '@utils/SavingUtils';
import type { PSDKVersion } from '@services/getPSDKVersion';
import { StudioAbility } from '@modelEntities/ability';
import {
import type {
StudioCreditConfig,
StudioDevicesConfig,
StudioDisplayConfig,
StudioGameOptionConfig,
StudioGraphicConfig,
StudioInfoConfig,
StudioLanguageConfig,
StudioNatureConfig,
StudioSaveConfig,
StudioSceneTitleConfig,
StudioSettingConfig,
StudioTextConfig,
} from '@modelEntities/config';
import { StudioDex } from '@modelEntities/dex';
import { StudioCreature } from '@modelEntities/creature';
import { StudioItem } from '@modelEntities/item';
import { StudioMove } from '@modelEntities/move';
import { StudioGroup } from '@modelEntities/group';
import { StudioTrainer } from '@modelEntities/trainer';
import { StudioMapLink } from '@modelEntities/mapLink';
import { StudioZone } from '@modelEntities/zone';
import { StudioType } from '@modelEntities/type';
import { StudioQuest } from '@modelEntities/quest';
import { StudioProject, StudioProjectLanguageTranslation } from '@modelEntities/project';
import { StudioTextInfo } from '@modelEntities/textInfo';
import { StudioMap } from '@modelEntities/map';
import { DbSymbol } from '@modelEntities/dbSymbol';
import { StudioMapInfo } from '@modelEntities/mapInfo';
import type { StudioAbility } from '@modelEntities/ability';
import type { StudioDex } from '@modelEntities/dex';
import type { StudioCreature } from '@modelEntities/creature';
import type { StudioItem } from '@modelEntities/item';
import type { StudioMove } from '@modelEntities/move';
import type { StudioGroup } from '@modelEntities/group';
import type { StudioTrainer } from '@modelEntities/trainer';
import type { StudioMapLink } from '@modelEntities/mapLink';
import type { StudioZone } from '@modelEntities/zone';
import type { StudioType } from '@modelEntities/type';
import type { StudioQuest } from '@modelEntities/quest';
import type { StudioProject, StudioProjectLanguageTranslation } from '@modelEntities/project';
import type { StudioTextInfo } from '@modelEntities/textInfo';
import type { StudioMap } from '@modelEntities/map';
import type { DbSymbol } from '@modelEntities/dbSymbol';
import type { StudioMapInfo } from '@modelEntities/mapInfo';
import type { StudioNature } from '@modelEntities/nature';

export interface ProjectData {
items: {
Expand Down Expand Up @@ -70,6 +70,9 @@ export interface ProjectData {
maps: {
[map: string]: StudioMap;
};
natures: {
[nature: string]: StudioNature;
};
}

export interface ProjectText {
Expand All @@ -88,7 +91,6 @@ export const psdkConfigKeys: (keyof PSDKConfigs)[] = [
'settings_config',
'texts_config',
'game_options_config',
'natures',
];

export interface PSDKConfigs {
Expand All @@ -103,7 +105,6 @@ export interface PSDKConfigs {
settings_config: StudioSettingConfig;
texts_config: StudioTextConfig;
game_options_config: StudioGameOptionConfig;
natures: StudioNatureConfig;
}

export type SelectedDataIdentifier = {
Expand All @@ -123,6 +124,7 @@ export type SelectedDataIdentifier = {
mapLink: string;
map: string;
textInfo: number;
nature: string;
};

export interface State {
Expand Down Expand Up @@ -165,6 +167,7 @@ const initialState = {
mapLink: '__undef__',
map: 'map001',
textInfo: 0,
nature: 'adamant',
},
savingData: new SavingMap(),
savingConfig: new SavingConfigMap(),
Expand Down
Loading
Loading