import betterproto
from game_server.net.session import Session
from lib.proto import (
    GetDLCAvatarReq,
    GetDLCAvatarRsp,
    DLCAvatar,
    DLCAvatarTalent
)

async def handle(session: Session, msg: GetDLCAvatarReq) -> betterproto.Message:
    return GetDLCAvatarRsp(
        retcode=0,
        avatar_list=[
            DLCAvatar(
                avatar_id=1203,
                equip_talent_list=[20304,20322,20327],
                talent_list=[
                    DLCAvatarTalent(
                        level=3,
                        talent_id=20300
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=20301
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=20302
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=20303
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=20304
                    ),
                    DLCAvatarTalent(
                        level=2,
                        talent_id=20305
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=20306
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=20307
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=20308
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=20309
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=20310
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=20311
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=20312
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=20313
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=20314
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=20315
                    ),
                    DLCAvatarTalent(
                        level=2,
                        talent_id=20316
                    ),
                    DLCAvatarTalent(
                        level=2,
                        talent_id=20317
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=20318
                    ),
                    DLCAvatarTalent(
                        level=2,
                        talent_id=20319
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=20320
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=20321
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=20322
                    ),
                    DLCAvatarTalent(
                        level=4,
                        talent_id=20323
                    ),
                    DLCAvatarTalent(
                        level=2,
                        talent_id=20324
                    ),
                    DLCAvatarTalent(
                        level=2,
                        talent_id=20325
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=20326
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=20327
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=20328
                    ),
                    DLCAvatarTalent(
                        level=8,
                        talent_id=20329,
                        wait_select_affix_set_id=3
                    ),
                    DLCAvatarTalent(
                        level=8,
                        talent_id=20330,
                        wait_select_affix_set_id=3
                    ),
                    DLCAvatarTalent(
                        level=8,
                        talent_id=20331,
                        wait_select_affix_set_id=3
                    ),
                    DLCAvatarTalent(
                        level=8,
                        talent_id=20332,
                        wait_select_affix_set_id=3
                    )
                ]
            ),
            DLCAvatar(
                avatar_id=1304,
                equip_talent_list=[30403,30423,30430],
                talent_list=[
                    DLCAvatarTalent(
                        level=1,
                        talent_id=30401
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=30402
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=30403
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=30404
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=30405
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=30406
                    ),
                    DLCAvatarTalent(
                        level=4,
                        talent_id=30407
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=30408
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=30409
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=30410
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=30411
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=30412
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=30413
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=30414
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=30415
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=30416
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=30417
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=30418
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=30420
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=30421
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=30422
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=30423
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=30424
                    ),
                    DLCAvatarTalent(
                        level=4,
                        talent_id=30425
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=30426
                    ),
                    DLCAvatarTalent(
                        level=2,
                        talent_id=30427
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=30428
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=30429
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=30430
                    ),
                    DLCAvatarTalent(
                        level=8,
                        talent_id=30431,
                        wait_select_affix_set_id=5
                    ),
                    DLCAvatarTalent(
                        level=8,
                        talent_id=30432,
                        wait_select_affix_set_id=5
                    ),
                    DLCAvatarTalent(
                        level=8,
                        talent_id=30433,
                        wait_select_affix_set_id=5
                    ),
                    DLCAvatarTalent(
                        level=8,
                        talent_id=30434,
                        wait_select_affix_set_id=5
                    )
                ]
            ),
            DLCAvatar(
                avatar_id=1411,
                equip_talent_list=[41101,41123,41124],
                talent_list=[
                    DLCAvatarTalent(
                        level=1,
                        talent_id=41100
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=41101
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=41102
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=41103
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=41104
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=41105
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=41106
                    ),
                    DLCAvatarTalent(
                        level=4,
                        talent_id=41107
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=41108
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=41109
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=41110
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=41111
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=41112
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=41113
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=41114
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=41115
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=41116
                    ),
                    DLCAvatarTalent(
                        level=2,
                        talent_id=41117
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=41118
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=41119
                    ),
                    DLCAvatarTalent(
                        level=2,
                        talent_id=41120
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=41122
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=41123
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=41124
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=41125
                    ),
                    DLCAvatarTalent(
                        level=2,
                        talent_id=41126
                    ),
                    DLCAvatarTalent(
                        level=1,
                        talent_id=41127
                    ),
                    DLCAvatarTalent(
                        level=3,
                        talent_id=41128
                    ),
                    DLCAvatarTalent(
                        level=2,
                        talent_id=41129
                    ),
                    DLCAvatarTalent(
                        level=8,
                        talent_id=41130,
                        wait_select_affix_set_id=3
                    ),
                    DLCAvatarTalent(
                        level=8,
                        talent_id=41131,
                        wait_select_affix_set_id=3
                    ),
                    DLCAvatarTalent(
                        level=8,
                        talent_id=41132,
                        wait_select_affix_set_id=3
                    ),
                    DLCAvatarTalent(
                        level=8,
                        talent_id=41133,
                        wait_select_affix_set_id=3
                    )
                ]
            )
        ]
    )
