libSPEC
Pokemon Save Editing Library
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Pages
Data Fields
pkm_box_t Struct Reference

Data Fields

pkm_header_t header
 
union {
   uint8_t   block [4][PKM_BLOCK_SIZE]
 
   struct {
      struct {
         uint16_t   species
 
         uint16_t   held_item
 
         uint16_t   ot_id
 
         uint16_t   ot_sid
 
         uint32_t   exp
 
         uint8_t   friendship
 
         uint8_t   ability
 
         pkm_marking_t   markings
 
         uint8_t   country
 
         pkm_effort_t   ev
 
         pkm_contest_t   contest
 
         pkm_ribbon_sinnoh1_t   ribbon_sinnoh1
 
         union {
            pkm_ribbon_sinnoh2_t   ribbon_sinnoh2
 
            pkm_ribbon_unova_t   ribbon_unova
 
         } 
 
      } 
 Block A.
 
      struct {
         uint16_t   move [4]
 
         uint8_t   move_pp [4]
 
         uint8_t   move_pp_up [4]
 
         union {
            pkm_genes_t   iv
 
            struct {
               uint32_t   __pad0__: 30
 
               bool   is_egg: 1
 
               bool   is_nicknamed: 1
 
            } 
 
         } 
 
         pkm_ribbon_hoenn1_t   ribbon_hoenn1
 
         pkm_ribbon_hoenn2_t   ribbon_hoenn2
 
         bool   is_fateful_encounter: 1
 
         bool   is_female: 1
 
         bool   is_genderless: 1
 
         uint8_t   forme: 5
 
         union {
            struct {
               uint8_t   __pad0__: 2
 
               bool   has_crown: 1
 
               uint8_t   shining_leaf: 5
 
            } 
 
            uint8_t   nature
 
         } 
 
         struct {
            bool   is_abil_dreamworld: 1
 
            bool   is_n_pokemon: 1
 
            uint8_t   __pad0__: 6
 
         } 
 
         uint8_t   __pad0__: 8
 
         uint16_t   egg_loc_plat
 
         uint16_t   met_loc_plat
 
      } 
 Block B.
 
      struct {
         char16_t   nickname [PKM_NICKNAME_LENGTH]
 
         uint16_t   hometown
 
         pkm_ribbon_sinnoh3_t   ribbon_sinnoh3
 
         pkm_ribbon_sinnoh4_t   ribbon_sinnoh4
 
         uint32_t   unknown
 
      } 
 Block C.
 
      struct {
         char16_t   ot_name [PKM_OT_NAME_LENGTH]
 
         pkm_date_t   egg_met_date
 
         pkm_date_t   met_date
 
         uint16_t   egg_loc_dp
 
         uint16_t   met_loc_dp
 
         pkm_pokerus_t   pokerus
 
         uint8_t   pokeball
 
         struct {
            uint8_t   level_met: 7
 
            bool   is_ot_female: 1
 
         } 
 
         uint8_t   encounter_type
 
         uint8_t   pokeball_hgss
 
         uint8_t   __pad0__: 8
 
      } 
 Block D.
 
   } 
 
};