From: Eevee Date: Tue, 27 Apr 2010 06:26:37 +0000 (-0700) Subject: Jammed in a bunch of nature stuff. X-Git-Tag: veekun-promotions/2010050901~23 X-Git-Url: http://git.veekun.com/zzz-pokedex.git/commitdiff_plain/2de5a951d1daf84640e1230eb623509d0c24d554 Jammed in a bunch of nature stuff. --- diff --git a/pokedex/data/csv/move_battle_styles.csv b/pokedex/data/csv/move_battle_styles.csv new file mode 100644 index 0000000..fc1853e --- /dev/null +++ b/pokedex/data/csv/move_battle_styles.csv @@ -0,0 +1,4 @@ +id,name +1,Attack +2,Defense +3,Support diff --git a/pokedex/data/csv/nature_battle_style_preferences.csv b/pokedex/data/csv/nature_battle_style_preferences.csv new file mode 100644 index 0000000..fa0010c --- /dev/null +++ b/pokedex/data/csv/nature_battle_style_preferences.csv @@ -0,0 +1,76 @@ +nature_id,move_battle_style_id,low_hp_preference,high_hp_preference +1,1,61,61 +1,2,7,7 +1,3,32,32 +2,1,32,30 +2,2,58,20 +2,3,10,50 +3,1,34,35 +3,2,60,45 +3,3,6,20 +4,1,25,40 +4,2,62,50 +4,3,13,10 +5,1,30,62 +5,2,20,10 +5,3,50,28 +6,1,84,20 +6,2,8,25 +6,3,8,55 +7,1,56,56 +7,2,22,22 +7,3,22,22 +8,1,34,44 +8,2,6,50 +8,3,60,6 +9,1,90,18 +9,2,5,70 +9,3,5,12 +10,1,88,58 +10,2,6,37 +10,3,6,5 +11,1,70,38 +11,2,15,31 +11,3,15,31 +12,1,28,69 +12,2,55,6 +12,3,17,25 +13,1,30,30 +13,2,58,58 +13,3,12,12 +14,1,42,42 +14,2,5,50 +14,3,53,8 +15,1,27,30 +15,2,6,13 +15,3,67,57 +16,1,35,35 +16,2,60,5 +16,3,5,60 +17,1,70,20 +17,2,22,70 +17,3,8,10 +18,1,29,35 +18,2,6,10 +18,3,65,55 +19,1,56,56 +19,2,22,22 +19,3,22,22 +20,1,56,56 +20,2,22,22 +20,3,22,22 +21,1,32,70 +21,2,60,15 +21,3,8,15 +22,1,75,25 +22,2,15,15 +22,3,10,60 +23,1,56,56 +23,2,22,22 +23,3,22,22 +24,1,22,88 +24,2,20,6 +24,3,58,6 +25,1,29,34 +25,2,11,11 +25,3,60,55 diff --git a/pokedex/data/csv/nature_pokeathlon_stats.csv b/pokedex/data/csv/nature_pokeathlon_stats.csv new file mode 100644 index 0000000..4b1f65f --- /dev/null +++ b/pokedex/data/csv/nature_pokeathlon_stats.csv @@ -0,0 +1,51 @@ +nature_id,pokeathlon_stat_id,max_change +1,1,-1 +1,2,1 +2,1,-2 +2,3,2 +3,1,-2 +3,5,2 +4,1,-2 +4,2,2 +5,1,2 +5,2,-2 +6,1,2 +6,3,-2 +7,3,1 +7,5,-1 +8,3,-2 +8,5,2 +9,1,2 +9,3,-2 +10,1,2 +10,3,-2 +11,1,2 +11,5,-2 +12,3,2 +12,5,-2 +13,1,-1 +13,5,1 +14,2,2 +14,5,-2 +15,2,-2 +15,5,2 +16,1,2 +16,5,-2 +17,1,2 +17,2,-2 +18,1,-2 +18,3,2 +19,1,1 +19,3,-1 +20,1,2 +20,2,-2 +21,1,-2 +21,2,2 +22,1,-2 +22,3,2 +23,1,-2 +23,5,2 +24,1,-2 +24,2,2 +25,1,1 +25,2,-1 diff --git a/pokedex/data/csv/natures.csv b/pokedex/data/csv/natures.csv index 207da36..4961c4a 100644 --- a/pokedex/data/csv/natures.csv +++ b/pokedex/data/csv/natures.csv @@ -1,26 +1,26 @@ -id,name,decreased_stat_id,increased_stat_id -1,Hardy,2,2 -2,Bold,2,3 -3,Modest,2,4 -4,Calm,2,5 -5,Timid,2,6 -6,Lonely,3,2 -7,Docile,3,3 -8,Mild,3,4 -9,Gentle,3,5 -10,Hasty,3,6 -11,Adamant,4,2 -12,Impish,4,3 -13,Bashful,4,4 -14,Careful,4,5 -15,Rash,5,4 -16,Jolly,4,6 -17,Naughty,5,2 -18,Lax,5,3 -19,Quirky,5,5 -20,Naive,5,6 -21,Brave,6,2 -22,Relaxed,6,3 -23,Quiet,6,4 -24,Sassy,6,5 -25,Serious,6,6 +id,name,decreased_stat_id,increased_stat_id,hates_flavor_id,likes_flavor_id +1,Hardy,2,2,1,1 +2,Bold,2,3,1,5 +3,Modest,2,4,1,2 +4,Calm,2,5,1,4 +5,Timid,2,6,1,3 +6,Lonely,3,2,5,1 +7,Docile,3,3,5,5 +8,Mild,3,4,5,2 +9,Gentle,3,5,5,4 +10,Hasty,3,6,5,3 +11,Adamant,4,2,2,1 +12,Impish,4,3,2,5 +13,Bashful,4,4,2,2 +14,Careful,4,5,2,4 +15,Rash,5,4,4,2 +16,Jolly,4,6,2,3 +17,Naughty,5,2,4,1 +18,Lax,5,3,4,5 +19,Quirky,5,5,4,4 +20,Naive,5,6,4,3 +21,Brave,6,2,3,1 +22,Relaxed,6,3,3,5 +23,Quiet,6,4,3,2 +24,Sassy,6,5,3,4 +25,Serious,6,6,3,3 diff --git a/pokedex/data/csv/pokeathlon_stats.csv b/pokedex/data/csv/pokeathlon_stats.csv new file mode 100644 index 0000000..b14513e --- /dev/null +++ b/pokedex/data/csv/pokeathlon_stats.csv @@ -0,0 +1,6 @@ +id,name +1,Speed +2,Power +3,Skill +4,Stamina +5,Jump diff --git a/pokedex/db/tables.py b/pokedex/db/tables.py index dc2b93c..9e0dc88 100644 --- a/pokedex/db/tables.py +++ b/pokedex/db/tables.py @@ -254,6 +254,11 @@ class Machine(TableBase): version_group_id = Column(Integer, ForeignKey('version_groups.id'), primary_key=True, nullable=False, autoincrement=False) move_id = Column(Integer, ForeignKey('moves.id'), nullable=False) +class MoveBattleStyle(TableBase): + __tablename__ = 'move_battle_styles' + id = Column(Integer, primary_key=True, nullable=False) + name = Column(Unicode(8), nullable=False) + class MoveEffectCategory(TableBase): __tablename__ = 'move_effect_categories' id = Column(Integer, primary_key=True, nullable=False) @@ -333,6 +338,26 @@ class Nature(TableBase): name = Column(Unicode(8), nullable=False) decreased_stat_id = Column(Integer, ForeignKey('stats.id'), nullable=False) increased_stat_id = Column(Integer, ForeignKey('stats.id'), nullable=False) + hates_flavor_id = Column(Integer, ForeignKey('contest_types.id'), nullable=False) + likes_flavor_id = Column(Integer, ForeignKey('contest_types.id'), nullable=False) + +class NatureBattleStylePreference(TableBase): + __tablename__ = 'nature_battle_style_preferences' + nature_id = Column(Integer, ForeignKey('natures.id'), primary_key=True, nullable=False) + move_battle_style_id = Column(Integer, ForeignKey('move_battle_styles.id'), primary_key=True, nullable=False) + low_hp_preference = Column(Integer, nullable=False) + high_hp_preference = Column(Integer, nullable=False) + +class NaturePokeathlonStat(TableBase): + __tablename__ = 'nature_pokeathlon_stats' + nature_id = Column(Integer, ForeignKey('natures.id'), primary_key=True, nullable=False) + pokeathlon_stat_id = Column(Integer, ForeignKey('pokeathlon_stats.id'), primary_key=True, nullable=False) + max_change = Column(Integer, nullable=False) + +class PokeathlonStat(TableBase): + __tablename__ = 'pokeathlon_stats' + id = Column(Integer, primary_key=True, nullable=False) + name = Column(Unicode(8), nullable=False) class Pokedex(TableBase): __tablename__ = 'pokedexes' @@ -665,6 +690,18 @@ Nature.decreased_stat = relation(Stat, primaryjoin=Nature.decreased_stat_id==Sta backref='decreasing_natures') Nature.increased_stat = relation(Stat, primaryjoin=Nature.increased_stat_id==Stat.id, backref='increasing_natures') +Nature.hates_flavor = relation(ContestType, primaryjoin=Nature.hates_flavor_id==ContestType.id, + backref='hating_natures') +Nature.likes_flavor = relation(ContestType, primaryjoin=Nature.likes_flavor_id==ContestType.id, + backref='liking_natures') +Nature.battle_style_preferences = relation(NatureBattleStylePreference, + order_by=NatureBattleStylePreference.move_battle_style_id, + backref='nature') +Nature.pokeathlon_effects = relation(NaturePokeathlonStat, order_by=NaturePokeathlonStat.pokeathlon_stat_id) + +NatureBattleStylePreference.battle_style = relation(MoveBattleStyle, backref='nature_preferences') + +NaturePokeathlonStat.pokeathlon_stat = relation(PokeathlonStat, backref='nature_effects') Pokedex.region = relation(Region, backref='pokedexes') Pokedex.version_groups = relation(VersionGroup, secondary=PokedexVersionGroup.__table__, backref='pokedexes')