コード例 #1
0
ファイル: models.py プロジェクト: czastack/wxFEFactory
class EmeraldEn(PointerGlobal):
    NAME = "绿宝石(英文版)"

    active_pokemon_count = Field(0x020244E9)
    active_pokemon = ModelField(0x020244EC, PokemonStructActives)
    stored_pokemon = Field((0x03005D94, 4))
    safari_balls = ByteField(0x0203A9FC)
    safari_time = WordField(0x0203A076)
    exp_gain = SignedField(0x020241F0, size=2)

    store = ArrayField(0x02005274, 8, ModelField(0, StoreItem))
    area = WordField(0x020322E4)
    wild_pokemon = WordField(0x03007E28)
    furniture_purchase = ByteField(0x03005E3A)
    appearance = ByteField(0x02024A5C)

    Inner = EmeraldJp.Inner
    inner = ModelPtrField(0x03005D90, Inner)

    # rom
    breed_list = ArrayField(0x083203CC, 412, ModelField(0, BreedListEntry))
    deoxys_breed_abilities = Field(0x00329D48)
    # ^
    exp_list = ArrayField(0x0831F72C, 8, ArrayField(0, 0x65, Field(0)))
    item_list = Field(0x005839A0)
    skill_list = Field(0x0031C898)
コード例 #2
0
ファイル: models.py プロジェクト: czastack/wxFEFactory
class FireLeafJp(PointerGlobal):
    active_pokemon_count = 0
    active_pokemon = ModelField(0x020241E4, PokemonStructActives)
    stored_pokemon = Field((0x03005050, 4))
    dust = 0
    decorate = 0
    clock_adjustment = 0
    per_day_random = 0
    safari_balls = ByteField(0x0203990C)
    safari_time = WordField(0x0203990E)
    exp_gain = SignedField(0x02023CB0, size=2)

    class Inner(Model):
        _player_name = Field(0, bytes, 10)
        _player_id = Field(0x0A)
        xor_mask = Field(0x00000AF8)
        money = MaskedField(Field(0x00001234))
        coin = MaskedField(WordField(0x00001238))
        menu = Field(0x00001F89)
        badge = Field(0x00001F8A)
        spray_time = WordField(0x00001FE4)
        daycare_center_step_1 = ByteField(0x00003FAC)
        daycare_center_step_2 = ByteField(0x00004038)
        step_counter = ByteField(0x0000403E)

        _iemfield = PokemonItemField(0)
        item_normal = ArrayField(0x000012B4, 0x2A, _iemfield)
        item_keyitem = ArrayField(0x0000135C, 0x1E, _iemfield)
        item_pokeball = ArrayField(0x000013D4, 0x0D, _iemfield)
        item_machine = ArrayField(0x00001408, 0x3A, _iemfield)
        item_berry = ArrayField(0x000014F0, 0x2B, _iemfield)
        item_pokeblock = None

    inner = ModelPtrField(0x0300504C, Inner)
コード例 #3
0
ファイル: models.py プロジェクト: czastack/wxFEFactory
class RubySapphireEn(BaseGlobal):
    active_pokemon_count = Field(0x03004350)
    active_pokemon = ModelField(0x03004360, PokemonStructActives)
    stored_pokemon = Field(0x020300A4)
    _player_name = Field(0x02024EA4, bytes, 10)
    _player_id = Field(0x02024EAE)
    xor_mask = 0
    money = MaskedField(Field(0x02025BC4))
    coin = MaskedField(WordField(0x02025BC8))
    dust = WordField(0x02026B04)
    menu = Field(0x02026A54)
    decorate = Field(0x02027DD4)
    badge = Field(0x02026A55)
    clock_adjustment = Field(0x02024F3C)
    per_day_random = Field(0x02026B0A)
    spray_time = WordField(0x02026AB6)
    safari_balls = ByteField(0x02038808)
    safari_time = WordField(0x0203880A)
    daycare_center_step_1 = ByteField(0x020287E0)
    daycare_center_step_2 = ByteField(0x020287E4)
    step_counter = ByteField(0x020287EA)
    exp_gain = SignedField(0x02024BEC, size=2)

    _iemfield = PokemonItemField(0)
    item_normal = ArrayField(0x02025C94, 0x14, _iemfield)
    item_keyitem = ArrayField(0x02025CE4, 0x14, _iemfield)
    item_pokeball = ArrayField(0x02025D34, 0x10, _iemfield)
    item_machine = ArrayField(0x02025D74, 0x40, _iemfield)
    item_berry = ArrayField(0x02025E74, 0x2E, _iemfield)
    item_pokeblock = ArrayField(0x02025F2C, 0x28, _iemfield)
コード例 #4
0
ファイル: models.py プロジェクト: czastack/wxFEFactory
class RubySapphireJp(BaseGlobal):
    active_pokemon_count = Field(0x03004280)
    active_pokemon = ModelField(0x03004290, PokemonStructActives)
    stored_pokemon = Field(0x0202FDC0)
    _player_name = Field(0x02024C04, bytes, 10)
    _player_id = Field(0x02024C0E)
    xor_mask = 0
    money = MaskedField(Field(0x02025924))
    coin = MaskedField(WordField(0x02025928))
    dust = WordField(0x02026864)
    menu = Field(0x020267B4)
    decorate = Field(0x02027B34)
    badge = Field(0x020267B5)
    clock_adjustment = Field(0x02024C9C)
    per_day_random = Field(0x0202681C)
    spray_time = WordField(0x02026816)
    safari_balls = ByteField(0x02038504)
    safari_time = WordField(0x02038506)
    daycare_center_step_1 = ByteField(0x02028540)
    daycare_center_step_2 = ByteField(0x02028544)
    step_counter = ByteField(0x0202854A)
    exp_gain = SignedField(0x0202494C, size=2)

    _iemfield = PokemonItemField(0)
    item_normal = ArrayField(0x020259F4, 0x14, _iemfield)
    item_keyitem = ArrayField(0x02025A44, 0x14, _iemfield)
    item_pokeball = ArrayField(0x02025A94, 0x10, _iemfield)
    item_machine = ArrayField(0x02025AD4, 0x40, _iemfield)
    item_berry = ArrayField(0x02025BD4, 0x2E, _iemfield)
    item_pokeblock = ArrayField(0x02025C8C, 0x28, _iemfield)
コード例 #5
0
class Person(Model):
    SIZE = 0xA0

    hp_max = WordField(0x020069F8, label="HP上限")
    resist = WordField(0x020069FA, label="RESIST")
    str = ByteField(0x020069FC, label="STR")
    mgc = ByteField(0x020069FD, label="MGC")
    agl = ByteField(0x020069FE, label="AGL")
    vit = ByteField(0x020069FF, label="VIT")
    hp_heal = ByteField(0x02006A01, label="HP回复%")
    resistance = ArrayField(0x02006A02, 5, SignedField(0, size=1), label="抗性")
    adaptive = ByteField(0x02006A07, label="全抗性")
    skills = Field(0x02006A18, bytes, 0x48)
コード例 #6
0
ファイル: models.py プロジェクト: czastack/wxFEFactory
class FireLeafEn(PointerGlobal):
    active_pokemon_count = 0
    active_pokemon = ModelField(0x02024284, PokemonStructActives)
    stored_pokemon = Field((0x03005010, 4))
    dust = 0
    decorate = 0
    clock_adjustment = 0
    per_day_random = 0
    safari_balls = ByteField(0x02039994)
    safari_time = WordField(0x02039996)
    exp_gain = SignedField(0x02023D50, size=2)

    Inner = FireLeafJp.Inner
    inner = ModelPtrField(0x0300500C, Inner)
コード例 #7
0
ファイル: models.py プロジェクト: czastack/wxFEFactory
class EmeraldJp(PointerGlobal):
    NAME = "绿宝石(日文版)"

    active_pokemon_count = Field(0x0202418D)
    active_pokemon = ModelField(0x02024190, PokemonStructActives)
    stored_pokemon = Field((0x03005AF4, 4))
    safari_balls = ByteField(0x02039D18)
    safari_time = WordField(0x02039D1A)
    exp_gain = SignedField(0x02023E94, size=2)

    class Inner(Model):
        _player_name = Field(0, bytes, 10)
        _player_id = Field(0x0A)
        xor_mask = Field(0x000000AC)
        money = MaskedField(Field(0x0000143C))
        coin = MaskedField(WordField(0x00001440))
        dust = WordField(0x000023D8)
        menu = Field(0x00002328)
        decorate = Field(0x000036E0)
        badge = Field(0x00002329)
        clock_adjustment = Field(0x00000098)
        per_day_random = Field(0x00002390)
        spray_time = WordField(0x0000238A)
        daycare_center_step_1 = ByteField(0x00004064)
        daycare_center_step_2 = ByteField(0x000040F0)
        step_counter = ByteField(0x000040F8)
        battle_points_current = WordField(0x00000EB8)
        battle_points_trainer_card = WordField(0x00000EBA)

        _iemfield = PokemonItemField(0)
        item_normal = ArrayField(0x0000150C, 0x1E, _iemfield)
        item_keyitem = ArrayField(0x00001584, 0x1E, _iemfield)
        item_pokeball = ArrayField(0x000015FC, 0x10, _iemfield)
        item_machine = ArrayField(0x0000163C, 0x40, _iemfield)
        item_berry = ArrayField(0x0000173C, 0x46, _iemfield)
        item_pokeblock = ArrayField(0x000017F4, 0x28, _iemfield)

    inner = ModelPtrField(0x03005AF0, Inner)

    # rom
    breed_list = ArrayField(0x082F0D54, 412, ModelField(0, BreedListEntry))
    deoxys_breed_abilities = Field(0x002FA6D6)
    # ^
    exp_list = ArrayField(0x082F00B4, 8, ArrayField(0, 0x65, Field(0)))
    item_list = Field(0x0055CEE8)
    skill_list = Field(0x002ED220)