diff --git a/gameserver/assets/ExcelBinOutput/AvatarCostumeExcelConfigData.json b/gameserver/assets/ExcelBinOutput/AvatarCostumeExcelConfigData.json new file mode 100644 index 0000000..a24365a --- /dev/null +++ b/gameserver/assets/ExcelBinOutput/AvatarCostumeExcelConfigData.json @@ -0,0 +1,1134 @@ +[ + { + "skinId": 200301, + "indexID": 2, + "nameTextMapHash": 1504245738, + "descTextMapHash": 3529954098, + "itemId": 340001, + "characterId": 10000003, + "jsonName": "Avatar_Lady_Sword_QinCostumeSea", + "prefabPathHash": 9215865218573512220, + "prefabRemotePathHash": 17992774763103845215, + "prefabNpcPathHash": 2693372009414780113, + "prefabManekinPathHash": 16220654252350373708, + "quality": 4, + "frontIconName": "UI_AvatarIcon_QinCostumeSea", + "sideIconName": "UI_AvatarIcon_Side_QinCostumeSea", + "imageNameHash": 7856783315815955830 + }, + { + "skinId": 201401, + "indexID": 1, + "nameTextMapHash": 4121525482, + "descTextMapHash": 2644173682, + "itemId": 340000, + "characterId": 10000014, + "jsonName": "Avatar_Girl_Catalyst_BarbaraCostumeSummertime", + "prefabPathHash": 10565960914446858292, + "prefabRemotePathHash": 10341761028724614104, + "prefabNpcPathHash": 5183081712927355219, + "prefabManekinPathHash": 7590386921274555252, + "quality": 4, + "frontIconName": "UI_AvatarIcon_BarbaraCostumeSummertime", + "sideIconName": "UI_AvatarIcon_Side_BarbaraCostumeSummertime", + "imageNameHash": 16049450277489157369 + }, + { + "skinId": 202701, + "indexID": 1, + "nameTextMapHash": 2572106930, + "descTextMapHash": 720597146, + "itemId": 340002, + "characterId": 10000027, + "jsonName": "Avatar_Lady_Catalyst_NingguangCostumeFloral", + "prefabPathHash": 15863689246053601958, + "prefabRemotePathHash": 11681843191975356725, + "prefabNpcPathHash": 9773804280703925870, + "prefabManekinPathHash": 1433662792352814140, + "quality": 4, + "frontIconName": "UI_AvatarIcon_NingguangCostumeFloral", + "sideIconName": "UI_AvatarIcon_Side_NingguangCostumeFloral", + "imageNameHash": 13693364619168872694 + }, + { + "skinId": 204201, + "indexID": 1, + "nameTextMapHash": 1613857666, + "descTextMapHash": 1532026282, + "itemId": 340003, + "characterId": 10000042, + "jsonName": "Avatar_Girl_Sword_KeqingCostumeFeather", + "prefabPathHash": 10364379182659254215, + "prefabRemotePathHash": 6372458023003575072, + "prefabNpcPathHash": 12660355485795349718, + "prefabManekinPathHash": 11708378725870789733, + "quality": 4, + "frontIconName": "UI_AvatarIcon_KeqingCostumeFeather", + "sideIconName": "UI_AvatarIcon_Side_KeqingCostumeFeather", + "imageNameHash": 8264683658462126315 + }, + { + "skinId": 200302, + "indexID": 1, + "nameTextMapHash": 2691230306, + "descTextMapHash": 1553444314, + "itemId": 340006, + "characterId": 10000003, + "jsonName": "Avatar_Lady_Sword_QinCostumeWic", + "prefabPathHash": 11789304378759268432, + "prefabRemotePathHash": 2508262379750057037, + "prefabNpcPathHash": 8899383397730055880, + "prefabManekinPathHash": 6257448215821889913, + "isDefaultUnlock": true, + "quality": 4, + "hide": true, + "frontIconName": "UI_AvatarIcon_QinCostumeWic", + "sideIconName": "UI_AvatarIcon_Side_QinCostumeWic", + "imageNameHash": 2268507951203388027 + }, + { + "skinId": 202101, + "indexID": 1, + "nameTextMapHash": 4237698530, + "descTextMapHash": 2955174482, + "itemId": 340007, + "characterId": 10000021, + "jsonName": "Avatar_Girl_Bow_AmborCostumeWic", + "prefabPathHash": 7122218723217693045, + "prefabRemotePathHash": 14462486063824583299, + "prefabNpcPathHash": 16495873575277370679, + "prefabManekinPathHash": 11555033508243667944, + "isDefaultUnlock": true, + "quality": 4, + "hide": true, + "frontIconName": "UI_AvatarIcon_AmborCostumeWic", + "sideIconName": "UI_AvatarIcon_Side_AmborCostumeWic", + "imageNameHash": 1673287744058013036 + }, + { + "skinId": 204101, + "indexID": 1, + "nameTextMapHash": 1860400666, + "descTextMapHash": 2912743770, + "itemId": 340008, + "characterId": 10000041, + "jsonName": "Avatar_Girl_Catalyst_MonaCostumeWic", + "prefabPathHash": 15379405067054348520, + "prefabRemotePathHash": 16287308438257703283, + "prefabNpcPathHash": 1127931153574195190, + "prefabManekinPathHash": 5022057012086513913, + "isDefaultUnlock": true, + "quality": 4, + "hide": true, + "frontIconName": "UI_AvatarIcon_MonaCostumeWic", + "sideIconName": "UI_AvatarIcon_Side_MonaCostumeWic", + "imageNameHash": 5743696895040120452 + }, + { + "skinId": 204501, + "indexID": 1, + "nameTextMapHash": 2412226586, + "descTextMapHash": 3143995322, + "itemId": 340009, + "characterId": 10000045, + "jsonName": "Avatar_Lady_Pole_RosariaCostumeWic", + "prefabPathHash": 12861565697458263896, + "prefabRemotePathHash": 10539667758355398191, + "prefabNpcPathHash": 9648000434294861381, + "prefabManekinPathHash": 12267662344150393563, + "isDefaultUnlock": true, + "quality": 4, + "hide": true, + "frontIconName": "UI_AvatarIcon_RosariaCostumeWic", + "sideIconName": "UI_AvatarIcon_Side_RosariaCostumeWic", + "imageNameHash": 2832692351080435349 + }, + { + "skinId": 201601, + "indexID": 1, + "nameTextMapHash": 1332852170, + "descTextMapHash": 3295060426, + "itemId": 340004, + "characterId": 10000016, + "jsonName": "Avatar_Male_Claymore_DilucCostumeFlamme", + "prefabPathHash": 10368416818400608368, + "prefabRemotePathHash": 15335225919554737858, + "prefabNpcPathHash": 7202002721915920244, + "animatorConfigPathHash": 17146454811973008912, + "prefabManekinPathHash": 13676438560609835669, + "controllerPathHash": 9590652495663153053, + "controllerRemotePathHash": 4585718866811975168, + "quality": 5, + "frontIconName": "UI_AvatarIcon_DilucCostumeFlamme", + "sideIconName": "UI_AvatarIcon_Side_DilucCostumeFlamme", + "imageNameHash": 3029142693095236341 + }, + { + "skinId": 203101, + "indexID": 1, + "nameTextMapHash": 3162794298, + "descTextMapHash": 2089933442, + "itemId": 340005, + "characterId": 10000031, + "jsonName": "Avatar_Girl_Bow_FischlCostumeHighness", + "prefabPathHash": 13534430752549234096, + "prefabRemotePathHash": 1058632974177999890, + "prefabNpcPathHash": 16733412713662534099, + "animatorConfigPathHash": 16874910532900252125, + "prefabManekinPathHash": 1849563772142813400, + "controllerPathHash": 9561591276388174665, + "controllerRemotePathHash": 7514891772841964710, + "quality": 4, + "frontIconName": "UI_AvatarIcon_FischlCostumeHighness", + "sideIconName": "UI_AvatarIcon_Side_FischlCostumeHighness", + "imageNameHash": 16903652226668881157 + }, + { + "skinId": 200201, + "indexID": 1, + "nameTextMapHash": 2768521498, + "descTextMapHash": 2663678610, + "itemId": 340010, + "characterId": 10000002, + "jsonName": "Avatar_Girl_Sword_AyakaCostumeFruhling", + "prefabPathHash": 11012300754669182976, + "prefabRemotePathHash": 10678187531089930334, + "prefabNpcPathHash": 17569223125650117623, + "animatorConfigPathHash": 16603455789725430199, + "prefabManekinPathHash": 8511293476587773248, + "controllerPathHash": 17673295221370888477, + "controllerRemotePathHash": 430291944493067811, + "quality": 4, + "frontIconName": "UI_AvatarIcon_AyakaCostumeFruhling", + "sideIconName": "UI_AvatarIcon_Side_AyakaCostumeFruhling", + "imageNameHash": 17153758638107736936 + }, + { + "skinId": 200601, + "indexID": 1, + "nameTextMapHash": 2255412906, + "descTextMapHash": 2734308554, + "itemId": 340011, + "characterId": 10000006, + "jsonName": "Avatar_Lady_Catalyst_LisaCostumeStudentin", + "prefabPathHash": 12600550299813159973, + "prefabRemotePathHash": 5893029251442558127, + "prefabNpcPathHash": 5639347602417793683, + "animatorConfigPathHash": 5920923966167288567, + "prefabManekinPathHash": 9138671107307150542, + "controllerPathHash": 3844565694031600615, + "controllerRemotePathHash": 8887732179020530164, + "quality": 4, + "frontIconName": "UI_AvatarIcon_LisaCostumeStudentin", + "sideIconName": "UI_AvatarIcon_Side_LisaCostumeStudentin", + "imageNameHash": 3666831924373171292 + }, + { + "skinId": 202901, + "indexID": 1, + "nameTextMapHash": 2343491290, + "descTextMapHash": 1807518842, + "itemId": 340012, + "characterId": 10000029, + "jsonName": "Avatar_Loli_Catalyst_KleeCostumeWitch", + "prefabPathHash": 14487796459102729503, + "prefabRemotePathHash": 13958116777399182457, + "prefabNpcPathHash": 13685423552966790544, + "animatorConfigPathHash": 6894630599703929840, + "prefabManekinPathHash": 860060720579263807, + "controllerPathHash": 1552326239233510656, + "controllerRemotePathHash": 5630855241666820968, + "quality": 4, + "frontIconName": "UI_AvatarIcon_KleeCostumeWitch", + "sideIconName": "UI_AvatarIcon_Side_KleeCostumeWitch", + "imageNameHash": 16796031080227059141 + }, + { + "skinId": 201501, + "indexID": 1, + "nameTextMapHash": 177626138, + "descTextMapHash": 2590769514, + "itemId": 340013, + "characterId": 10000015, + "jsonName": "Avatar_Male_Sword_KaeyaCostumeDancer", + "prefabPathHash": 494681429835694962, + "prefabRemotePathHash": 15807700893622234799, + "prefabNpcPathHash": 477895560165567279, + "prefabManekinPathHash": 5213861121553669666, + "quality": 4, + "frontIconName": "UI_AvatarIcon_KaeyaCostumeDancer", + "sideIconName": "UI_AvatarIcon_Side_KaeyaCostumeDancer", + "imageNameHash": 6823783867527131322 + }, + { + "skinId": 206301, + "indexID": 1, + "nameTextMapHash": 945735386, + "descTextMapHash": 4226591458, + "itemId": 340014, + "characterId": 10000063, + "jsonName": "Avatar_Lady_Pole_ShenheCostumeDai", + "prefabPathHash": 6614232366381786636, + "prefabRemotePathHash": 12983630808894762876, + "prefabNpcPathHash": 1019362221600152335, + "animatorConfigPathHash": 8439775389633857302, + "prefabManekinPathHash": 15748877212258276493, + "controllerPathHash": 3927025238145279139, + "controllerRemotePathHash": 2079033779677266471, + "quality": 4, + "frontIconName": "UI_AvatarIcon_ShenheCostumeDai", + "sideIconName": "UI_AvatarIcon_Side_ShenheCostumeDai", + "imageNameHash": 13551163907161748671 + }, + { + "skinId": 203701, + "indexID": 1, + "nameTextMapHash": 1442607890, + "descTextMapHash": 2352085090, + "itemId": 340015, + "characterId": 10000037, + "jsonName": "Avatar_Girl_Bow_GanyuCostumeYu", + "prefabPathHash": 7498173519010297381, + "prefabRemotePathHash": 13647647765974419909, + "prefabNpcPathHash": 17066423753093831075, + "animatorConfigPathHash": 10325762936017634292, + "prefabManekinPathHash": 109831431656997901, + "controllerPathHash": 17301494551858320666, + "controllerRemotePathHash": 13724098110668936538, + "quality": 4, + "frontIconName": "UI_AvatarIcon_GanyuCostumeYu", + "sideIconName": "UI_AvatarIcon_Side_GanyuCostumeYu", + "imageNameHash": 4484569006207969656 + }, + { + "skinId": 202501, + "indexID": 1, + "nameTextMapHash": 1935444386, + "descTextMapHash": 2374826642, + "itemId": 340016, + "characterId": 10000025, + "jsonName": "Avatar_Boy_Sword_XingqiuCostumeBamboo", + "prefabPathHash": 3120277132814718658, + "prefabRemotePathHash": 9952537578809031978, + "prefabNpcPathHash": 1199989316314760447, + "prefabManekinPathHash": 14993972050868744350, + "quality": 4, + "frontIconName": "UI_AvatarIcon_XingqiuCostumeBamboo", + "sideIconName": "UI_AvatarIcon_Side_XingqiuCostumeBamboo", + "imageNameHash": 16611982762112193266 + }, + { + "skinId": 200200, + "nameTextMapHash": 171482850, + "descTextMapHash": 2373183578, + "characterId": 10000002, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 200300, + "nameTextMapHash": 2431528538, + "descTextMapHash": 248153650, + "characterId": 10000003, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "", + "domesticHideInArtPreview": true + }, + { + "skinId": 200500, + "nameTextMapHash": 1648736450, + "descTextMapHash": 2814665554, + "characterId": 10000005, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 200600, + "nameTextMapHash": 672166154, + "descTextMapHash": 3946345210, + "characterId": 10000006, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 200700, + "nameTextMapHash": 3561662730, + "descTextMapHash": 2020994066, + "characterId": 10000007, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 201400, + "nameTextMapHash": 2895548298, + "descTextMapHash": 3092975850, + "characterId": 10000014, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 201500, + "nameTextMapHash": 4036813530, + "descTextMapHash": 1523967378, + "characterId": 10000015, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 201600, + "nameTextMapHash": 674973162, + "descTextMapHash": 2401924570, + "characterId": 10000016, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 202000, + "nameTextMapHash": 1677296490, + "descTextMapHash": 2955915298, + "characterId": 10000020, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 202100, + "nameTextMapHash": 690774682, + "descTextMapHash": 2978334658, + "characterId": 10000021, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "", + "domesticHideInArtPreview": true + }, + { + "skinId": 202200, + "nameTextMapHash": 3806453578, + "descTextMapHash": 3977341762, + "characterId": 10000022, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 202300, + "nameTextMapHash": 2926593050, + "descTextMapHash": 2478839258, + "characterId": 10000023, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 202400, + "nameTextMapHash": 2091122082, + "descTextMapHash": 1844332810, + "characterId": 10000024, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 202500, + "nameTextMapHash": 3118674250, + "descTextMapHash": 1606071354, + "characterId": 10000025, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 202600, + "nameTextMapHash": 2696933402, + "descTextMapHash": 3291997178, + "characterId": 10000026, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 202700, + "nameTextMapHash": 116451794, + "descTextMapHash": 3980318498, + "characterId": 10000027, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 202900, + "nameTextMapHash": 1023505626, + "descTextMapHash": 3488214794, + "characterId": 10000029, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 203000, + "nameTextMapHash": 41327378, + "descTextMapHash": 2640185922, + "characterId": 10000030, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 203100, + "nameTextMapHash": 2969091354, + "descTextMapHash": 4134576130, + "characterId": 10000031, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 203200, + "nameTextMapHash": 2359403186, + "descTextMapHash": 3111188850, + "characterId": 10000032, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 203300, + "nameTextMapHash": 369350914, + "descTextMapHash": 1165773426, + "characterId": 10000033, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 203400, + "nameTextMapHash": 1660794338, + "descTextMapHash": 102807738, + "characterId": 10000034, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 203500, + "nameTextMapHash": 2620016810, + "descTextMapHash": 4056261530, + "characterId": 10000035, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 203600, + "nameTextMapHash": 1142485354, + "descTextMapHash": 3971237746, + "characterId": 10000036, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 203700, + "nameTextMapHash": 4131676042, + "descTextMapHash": 1209631242, + "characterId": 10000037, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 203800, + "nameTextMapHash": 3397577098, + "descTextMapHash": 310650770, + "characterId": 10000038, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 203900, + "nameTextMapHash": 2364432618, + "descTextMapHash": 670221618, + "characterId": 10000039, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 204100, + "nameTextMapHash": 4029369362, + "descTextMapHash": 871545986, + "characterId": 10000041, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "", + "domesticHideInArtPreview": true + }, + { + "skinId": 204200, + "nameTextMapHash": 3714413314, + "descTextMapHash": 1992333442, + "characterId": 10000042, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 204300, + "nameTextMapHash": 3529210914, + "descTextMapHash": 4118239546, + "characterId": 10000043, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 204400, + "nameTextMapHash": 2768155290, + "descTextMapHash": 678376738, + "characterId": 10000044, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 204500, + "nameTextMapHash": 772899890, + "descTextMapHash": 4067539010, + "characterId": 10000045, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "", + "domesticHideInArtPreview": true + }, + { + "skinId": 204600, + "nameTextMapHash": 626284674, + "descTextMapHash": 1186495122, + "characterId": 10000046, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 204700, + "nameTextMapHash": 3355624658, + "descTextMapHash": 973274738, + "characterId": 10000047, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 204800, + "nameTextMapHash": 258962178, + "descTextMapHash": 3070176786, + "characterId": 10000048, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 204900, + "nameTextMapHash": 2353136394, + "descTextMapHash": 984351202, + "characterId": 10000049, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 205000, + "nameTextMapHash": 2040879098, + "descTextMapHash": 1458439730, + "characterId": 10000050, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 205100, + "nameTextMapHash": 301314714, + "descTextMapHash": 1419139450, + "characterId": 10000051, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 205200, + "nameTextMapHash": 2377779762, + "descTextMapHash": 3412149506, + "characterId": 10000052, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 205300, + "nameTextMapHash": 4048306346, + "descTextMapHash": 2144597778, + "characterId": 10000053, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 205400, + "nameTextMapHash": 2786415650, + "descTextMapHash": 3173668642, + "characterId": 10000054, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 205500, + "nameTextMapHash": 3561880386, + "descTextMapHash": 990939858, + "characterId": 10000055, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 205600, + "nameTextMapHash": 382710810, + "descTextMapHash": 1024066610, + "characterId": 10000056, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 205700, + "nameTextMapHash": 2006093914, + "descTextMapHash": 4146650074, + "characterId": 10000057, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 205800, + "nameTextMapHash": 1295363218, + "descTextMapHash": 3314678434, + "characterId": 10000058, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 205900, + "nameTextMapHash": 4029103562, + "descTextMapHash": 3182680786, + "characterId": 10000059, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 206000, + "nameTextMapHash": 2196179842, + "descTextMapHash": 3407589218, + "characterId": 10000060, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 206100, + "nameTextMapHash": 2136989794, + "descTextMapHash": 1963076906, + "characterId": 10000061, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 206200, + "nameTextMapHash": 3429415730, + "descTextMapHash": 271842858, + "characterId": 10000062, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 206300, + "nameTextMapHash": 3671207274, + "descTextMapHash": 3625334322, + "characterId": 10000063, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 206400, + "nameTextMapHash": 2433262890, + "descTextMapHash": 1261799770, + "characterId": 10000064, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 206500, + "nameTextMapHash": 3245276834, + "descTextMapHash": 3036913898, + "characterId": 10000065, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 206600, + "nameTextMapHash": 3109032026, + "descTextMapHash": 3093997674, + "characterId": 10000066, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 206700, + "nameTextMapHash": 3135223450, + "descTextMapHash": 2308150714, + "characterId": 10000067, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 206800, + "nameTextMapHash": 3617396594, + "descTextMapHash": 1616648506, + "characterId": 10000068, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 206900, + "nameTextMapHash": 1106979266, + "descTextMapHash": 510932922, + "characterId": 10000069, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 207000, + "nameTextMapHash": 3647756106, + "descTextMapHash": 1078022994, + "characterId": 10000070, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 207100, + "nameTextMapHash": 3913661394, + "descTextMapHash": 1864424082, + "characterId": 10000071, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 207200, + "nameTextMapHash": 2665843154, + "descTextMapHash": 2067286834, + "characterId": 10000072, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 207300, + "nameTextMapHash": 2005565242, + "descTextMapHash": 2151511386, + "characterId": 10000073, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 207400, + "nameTextMapHash": 1128331378, + "descTextMapHash": 3853124810, + "characterId": 10000074, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 207500, + "nameTextMapHash": 4005813530, + "descTextMapHash": 3246746458, + "characterId": 10000075, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 207600, + "nameTextMapHash": 1487058818, + "descTextMapHash": 3487496106, + "characterId": 10000076, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 207700, + "nameTextMapHash": 1664916426, + "descTextMapHash": 3911845442, + "characterId": 10000077, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 207800, + "nameTextMapHash": 3349227426, + "descTextMapHash": 39198106, + "characterId": 10000078, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 207900, + "nameTextMapHash": 4041199642, + "descTextMapHash": 140684002, + "characterId": 10000079, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 208000, + "nameTextMapHash": 423812362, + "descTextMapHash": 3777257866, + "characterId": 10000080, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 208100, + "nameTextMapHash": 2460471634, + "descTextMapHash": 3875251706, + "characterId": 10000081, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 208200, + "nameTextMapHash": 3539582602, + "descTextMapHash": 260008858, + "characterId": 10000082, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 208300, + "nameTextMapHash": 1358526194, + "descTextMapHash": 3142534786, + "characterId": 10000083, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 208400, + "nameTextMapHash": 2247421522, + "descTextMapHash": 2711601770, + "characterId": 10000084, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 208500, + "nameTextMapHash": 3741795914, + "descTextMapHash": 172373146, + "characterId": 10000085, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 208600, + "nameTextMapHash": 3467014274, + "descTextMapHash": 2942361602, + "characterId": 10000086, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 208700, + "nameTextMapHash": 2356957482, + "descTextMapHash": 3026362642, + "characterId": 10000087, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 208800, + "nameTextMapHash": 626453522, + "descTextMapHash": 1262815914, + "characterId": 10000088, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 208900, + "nameTextMapHash": 1569690906, + "descTextMapHash": 3717819226, + "characterId": 10000089, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 209000, + "nameTextMapHash": 1001156090, + "descTextMapHash": 2017338442, + "characterId": 10000090, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 209100, + "nameTextMapHash": 3039352282, + "descTextMapHash": 1185194346, + "characterId": 10000091, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 209200, + "nameTextMapHash": 2007918858, + "descTextMapHash": 3180242922, + "characterId": 10000092, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 209300, + "nameTextMapHash": 2283589170, + "descTextMapHash": 2353796746, + "characterId": 10000093, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + }, + { + "skinId": 209400, + "nameTextMapHash": 4268512138, + "descTextMapHash": 1469088850, + "characterId": 10000094, + "jsonName": "", + "isDefault": true, + "frontIconName": "", + "sideIconName": "" + } +] \ No newline at end of file diff --git a/gameserver/assets/ExcelBinOutput/AvatarFlycloakExcelConfigData.json b/gameserver/assets/ExcelBinOutput/AvatarFlycloakExcelConfigData.json new file mode 100644 index 0000000..a494ac4 --- /dev/null +++ b/gameserver/assets/ExcelBinOutput/AvatarFlycloakExcelConfigData.json @@ -0,0 +1,123 @@ +[ + { + "flycloakId": 140001, + "nameTextMapHash": 1227437700, + "descTextMapHash": 2963284368, + "prefabPath": "ART/System/Flycloak/Flycloak_Normal_Glider_01/Flycloak_Normal_Glider_01", + "jsonName": "Flycloak_Default_01", + "icon": "UI_Gacha_FlycloakIcon_Glider", + "materialId": 140001 + }, + { + "flycloakId": 140002, + "nameTextMapHash": 3679998556, + "descTextMapHash": 2439760640, + "prefabPath": "ART/System/Flycloak/Flycloak_Normal_Starlit_01/Flycloak_Normal_Starlit_01", + "jsonName": "Flycloak_Default_01", + "icon": "UI_Gacha_FlycloakIcon_Starlit", + "materialId": 140002 + }, + { + "flycloakId": 140003, + "nameTextMapHash": 1307041812, + "descTextMapHash": 251460624, + "prefabPath": "ART/System/Flycloak/Flycloak_Normal_Psalmus_01/Flycloak_Normal_Psalmus_01", + "jsonName": "Flycloak_Default_01", + "icon": "UI_Gacha_FlycloakIcon_Psalmus", + "materialId": 140003 + }, + { + "flycloakId": 140004, + "nameTextMapHash": 3265724196, + "descTextMapHash": 95448472, + "prefabPath": "ART/System/Flycloak/Flycloak_Normal_Gale_01/Flycloak_Normal_Gale_01", + "jsonName": "Flycloak_Default_01", + "icon": "UI_Gacha_FlycloakIcon_Gale", + "materialId": 140004 + }, + { + "flycloakId": 140005, + "nameTextMapHash": 1800191236, + "descTextMapHash": 397410296, + "prefabPath": "ART/System/Flycloak/Flycloak_Normal_Megalith_01/Flycloak_Normal_Megalith_01", + "jsonName": "Flycloak_Default_01", + "icon": "UI_Gacha_FlycloakIcon_Megalith", + "materialId": 140005 + }, + { + "flycloakId": 140006, + "nameTextMapHash": 790364508, + "descTextMapHash": 2419069352, + "prefabPath": "ART/System/Flycloak/Flycloak_Normal_Nixavis_01/Flycloak_Normal_Nixavis_01", + "jsonName": "Flycloak_Default_01", + "icon": "UI_Gacha_FlycloakIcon_Nixavis", + "materialId": 140006 + }, + { + "flycloakId": 140007, + "nameTextMapHash": 972574812, + "descTextMapHash": 3582594568, + "prefabPath": "ART/System/Flycloak/Flycloak_Normal_Redcomet_01/Flycloak_Normal_Redcomet_01", + "jsonName": "Flycloak_Default_01", + "icon": "UI_Gacha_FlycloakIcon_Redcomet", + "materialId": 140007, + "hide": true + }, + { + "flycloakId": 140008, + "nameTextMapHash": 1047777100, + "descTextMapHash": 533901256, + "prefabPath": "ART/System/Flycloak/Flycloak_Normal_Thunderclap_01/Flycloak_Normal_Thunderclap_01", + "jsonName": "Flycloak_Default_01", + "icon": "UI_Gacha_FlycloakIcon_Thunderclap", + "materialId": 140008 + }, + { + "flycloakId": 140009, + "nameTextMapHash": 14389020, + "descTextMapHash": 3075333936, + "prefabPath": "ART/System/Flycloak/Flycloak_Normal_Skald_01/Flycloak_Normal_Skald_01", + "jsonName": "Flycloak_Default_01", + "icon": "UI_Gacha_FlycloakIcon_Skald", + "materialId": 140009, + "hide": true + }, + { + "flycloakId": 140010, + "nameTextMapHash": 2488969468, + "descTextMapHash": 1899653016, + "prefabPath": "ART/System/Flycloak/Flycloak_Normal_Ayus_01/Flycloak_Normal_Ayus_01", + "jsonName": "Flycloak_Default_01", + "icon": "UI_Gacha_FlycloakIcon_Ayus", + "materialId": 140010 + }, + { + "flycloakId": 140011, + "nameTextMapHash": 2292890772, + "descTextMapHash": 681143304, + "prefabPath": "ART/System/Flycloak/Flycloak_Normal_Asterceno_01/Flycloak_Normal_Asterceno_01", + "jsonName": "Flycloak_Default_01", + "icon": "UI_Gacha_FlycloakIcon_Asterceno", + "materialId": 140011, + "hide": true + }, + { + "flycloakId": 140012, + "nameTextMapHash": 180645420, + "descTextMapHash": 1161581424, + "prefabPath": "ART/System/Flycloak/Flycloak_Normal_Iustitia_01/Flycloak_Normal_Iustitia_01", + "jsonName": "Flycloak_Default_01", + "icon": "UI_Gacha_FlycloakIcon_Iustitia", + "materialId": 140012 + }, + { + "flycloakId": 140013, + "nameTextMapHash": 2462291164, + "descTextMapHash": 1830391744, + "prefabPath": "ART/System/Flycloak/Flycloak_Normal_Sternlied_01/Flycloak_Normal_Sternlied_01", + "jsonName": "Flycloak_Default_01", + "icon": "UI_Gacha_FlycloakIcon_Sternlied", + "materialId": 140013, + "hide": true + } +] \ No newline at end of file diff --git a/gameserver/src/data/excels.rs b/gameserver/src/data/excels.rs index 3276ec9..0883a22 100644 --- a/gameserver/src/data/excels.rs +++ b/gameserver/src/data/excels.rs @@ -37,6 +37,41 @@ pub struct AvatarExcelConfig { pub lodpattern_name: String, } +#[derive(Deserialize, Default)] +#[serde(default)] +#[serde(rename_all = "camelCase")] +pub struct AvatarCostumeExcelConfig { + pub skin_id: u32, + #[serde(rename = "indexID")] + pub index_id: u32, + pub name_text_map_hash: u64, + pub desc_text_map_hash: u64, + pub item_id: u32, + pub character_id: u32, + pub json_name: String, + pub prefab_path_hash: u64, + pub prefab_remote_path_hash: u64, + pub prefab_npc_path_hash: u64, + pub prefab_manekin_path_hash: u64, + pub quality: u32, + pub front_icon_name: String, + pub side_icon_name: String, + pub image_name_hash: u64, +} + +#[derive(Deserialize, Default)] +#[serde(default)] +#[serde(rename_all = "camelCase")] +pub struct AvatarFlycloakExcelConfig { + pub flycloak_id: u32, + pub name_text_map_hash: u64, + pub desc_text_map_hash: u64, + pub prefab_path: String, + pub json_name: String, + pub icon: String, + pub material_id: u32, +} + #[derive(Deserialize, Default)] #[serde(default)] #[serde(rename_all = "camelCase")] diff --git a/gameserver/src/data/mod.rs b/gameserver/src/data/mod.rs index e663180..0dbcad4 100644 --- a/gameserver/src/data/mod.rs +++ b/gameserver/src/data/mod.rs @@ -20,6 +20,8 @@ lazy_static! { pub struct ExcelCollection { pub avatar_configs: Vec, + pub avatar_flycloak_configs: Vec, + pub avatar_costume_configs: Vec, pub open_state_configs: Vec, } @@ -34,6 +36,14 @@ impl ExcelCollection { "assets/ExcelBinOutput/AvatarExcelConfigData.json", )) .unwrap(), + avatar_flycloak_configs: from_str(&load_asset( + "assets/ExcelBinOutput/AvatarFlycloakExcelConfigData.json", + )) + .unwrap(), + avatar_costume_configs: from_str(&load_asset( + "assets/ExcelBinOutput/AvatarCostumeExcelConfigData.json", + )) + .unwrap(), open_state_configs: from_str(&load_asset( "assets/ExcelBinOutput/OpenStateConfigData.json", )) @@ -42,7 +52,7 @@ impl ExcelCollection { } pub fn table_count(&self) -> usize { - 2 + 4 } } diff --git a/gameserver/src/game/entity/avatar.rs b/gameserver/src/game/entity/avatar.rs index 18d185c..d6387cf 100644 --- a/gameserver/src/game/entity/avatar.rs +++ b/gameserver/src/game/entity/avatar.rs @@ -25,6 +25,14 @@ impl SceneAvatar { self.data.clone() } + pub fn update_data(&mut self, data: &AvatarData) { + self.data = AvatarData { + properties: self.data.properties.clone(), + fight_properties: self.data.fight_properties.clone(), + ..data.clone() + }; + } + pub fn avatar_guid(&self) -> u64 { self.data.guid } @@ -132,6 +140,7 @@ impl Entity for SceneAvatar { skill_depot_id: self.data.skill_depot_id, weapon: Some(self.weapon.scene_weapon_info()), team_resonance_list: vec![10301], + costume_id: self.data.costume_id, wearing_flycloak_id: self.data.wearing_flycloak_id, born_time: self.data.born_time, excel_info: Some(AvatarExcelInfo::default()), diff --git a/gameserver/src/game/player_info.rs b/gameserver/src/game/player_info.rs index d974970..5e8323a 100644 --- a/gameserver/src/game/player_info.rs +++ b/gameserver/src/game/player_info.rs @@ -15,6 +15,7 @@ pub struct AvatarData { pub avatar_id: u32, pub skill_depot_id: u32, pub wearing_flycloak_id: u32, + pub costume_id: u32, pub born_time: u32, pub weapon: WeaponData, pub properties: Vec, @@ -52,6 +53,7 @@ impl PlayerInfo { avatar_id: config.id, skill_depot_id: config.skill_depot_id, wearing_flycloak_id: 140001, + costume_id: 0, born_time: util::cur_timestamp() as u32, weapon: WeaponData { guid: self.next_guid(), @@ -161,6 +163,7 @@ impl From for AvatarInfo { avatar_id: value.avatar_id, skill_depot_id: value.skill_depot_id, wearing_flycloak_id: value.wearing_flycloak_id, + costume_id: value.costume_id, born_time: value.born_time, life_state: 1, avatar_type: 1, diff --git a/gameserver/src/net/handlers/authentication.rs b/gameserver/src/net/handlers/authentication.rs index c55a79f..53e53ea 100644 --- a/gameserver/src/net/handlers/authentication.rs +++ b/gameserver/src/net/handlers/authentication.rs @@ -105,6 +105,16 @@ pub async fn on_player_login_req(session: &PlayerSession, _body: &PlayerLoginReq team_name: String::from("LogicTeam"), }, )]), + owned_costume_list: EXCEL_COLLECTION + .avatar_costume_configs + .iter() + .map(|a| a.skin_id) + .collect(), + owned_flycloak_list: EXCEL_COLLECTION + .avatar_flycloak_configs + .iter() + .map(|a| a.flycloak_id) + .collect(), ..Default::default() }; diff --git a/gameserver/src/net/handlers/avatar.rs b/gameserver/src/net/handlers/avatar.rs index 4c58fe2..b1d9084 100644 --- a/gameserver/src/net/handlers/avatar.rs +++ b/gameserver/src/net/handlers/avatar.rs @@ -33,6 +33,112 @@ pub async fn on_change_avatar_req(session: &PlayerSession, body: &ChangeAvatarRe .await } +pub async fn on_avatar_change_costume_req( + session: &PlayerSession, + body: &AvatarChangeCostumeReq, +) -> Result<()> { + let mut player = session.player_info_mut(); + let Some(avatar) = player + .avatars + .iter_mut() + .find(|a| a.guid == body.avatar_guid) + else { + return session + .send( + AVATAR_CHANGE_COSTUME_RSP, + AvatarChangeCostumeRsp { + retcode: -1, + ..Default::default() + }, + ) + .await; + }; + + avatar.costume_id = body.costume_id; + + let mut scene = session.context.scene.borrow_mut(); + if let Some(avatar_entity) = scene + .avatars + .iter_mut() + .find(|a| a.avatar_guid() == body.avatar_guid) + { + avatar_entity.update_data(avatar); + session + .send( + AVATAR_CHANGE_COSTUME_NOTIFY, + AvatarChangeCostumeNotify { + entity_info: Some(avatar_entity.info()), + }, + ) + .await?; + } + + session + .send( + AVATAR_CHANGE_COSTUME_RSP, + AvatarChangeCostumeRsp { + avatar_guid: body.avatar_guid, + costume_id: body.costume_id, + retcode: 0, + }, + ) + .await +} + +pub async fn on_avatar_wear_flycloak_req( + session: &PlayerSession, + body: &AvatarWearFlycloakReq, +) -> Result<()> { + let mut player = session.player_info_mut(); + let Some(avatar) = player + .avatars + .iter_mut() + .find(|a| a.guid == body.avatar_guid) + else { + return session + .send( + AVATAR_WEAR_FLYCLOAK_RSP, + AvatarWearFlycloakRsp { + retcode: -1, + ..Default::default() + }, + ) + .await; + }; + + avatar.wearing_flycloak_id = body.flycloak_id; + + let mut scene = session.context.scene.borrow_mut(); + if let Some(avatar_entity) = scene + .avatars + .iter_mut() + .find(|a| a.avatar_guid() == body.avatar_guid) + { + avatar_entity.update_data(avatar); + } + + session + .send( + AVATAR_FLYCLOAK_CHANGE_NOTIFY, + AvatarFlycloakChangeNotify { + avatar_guid: body.avatar_guid, + flycloak_id: body.flycloak_id, + }, + ) + .await?; + + session + .send( + AVATAR_WEAR_FLYCLOAK_RSP, + AvatarWearFlycloakRsp { + retcode: 0, + avatar_guid: body.avatar_guid, + flycloak_id: body.flycloak_id, + }, + ) + .await +} + pub async fn on_set_up_avatar_team_req( session: &PlayerSession, body: &SetUpAvatarTeamReq, diff --git a/gameserver/src/net/packet.rs b/gameserver/src/net/packet.rs index e69a791..46f72de 100644 --- a/gameserver/src/net/packet.rs +++ b/gameserver/src/net/packet.rs @@ -138,4 +138,6 @@ trait_handler! { EvtAvatarStandUpNotify 8549; MarkMapReq 7802; GetSceneAreaReq 5114; + AvatarChangeCostumeReq 24368; + AvatarWearFlycloakReq 27466; } diff --git a/gameserver/src/util.rs b/gameserver/src/util.rs index f6e6b11..1b893cf 100644 --- a/gameserver/src/util.rs +++ b/gameserver/src/util.rs @@ -37,10 +37,7 @@ pub fn xor(bytes: &mut [u8], key: &[u8]) { } pub fn hash_str(value: &str) -> u32 { - let mut hash = 0; - value - .chars() - .for_each(|c| hash = (((c as u64) + 131 * hash as u64) & 0xFFFFFFFF) as u32); - - hash + value.chars().fold(0, |hash, c| { + (((c as u64) + 131 * hash as u64) & 0xFFFFFFFF) as u32 + }) } diff --git a/proto/out/_.rs b/proto/out/_.rs index ad5a227..c697c97 100644 --- a/proto/out/_.rs +++ b/proto/out/_.rs @@ -1986,11 +1986,11 @@ pub mod oojabholigi { /// CmdId: 25960 #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] -pub struct Cjanmienhbl { +pub struct AvatarWearFlycloakRsp { #[prost(uint64, tag = "2")] pub avatar_guid: u64, #[prost(uint32, tag = "7")] - pub kljbfbpndna: u32, + pub flycloak_id: u32, #[prost(int32, tag = "5")] pub retcode: i32, } @@ -13254,7 +13254,7 @@ pub struct Oaigllmcelh { /// CmdId: 24368 #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] -pub struct Hjinepcidjh { +pub struct AvatarChangeCostumeReq { #[prost(uint32, tag = "10")] pub costume_id: u32, #[prost(uint64, tag = "6")] @@ -19231,9 +19231,9 @@ pub struct Aiibeahbkhc { /// CmdId: 27466 #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] -pub struct Hhlkjbhphip { +pub struct AvatarWearFlycloakReq { #[prost(uint32, tag = "12")] - pub kljbfbpndna: u32, + pub flycloak_id: u32, #[prost(uint64, tag = "6")] pub avatar_guid: u64, } @@ -19338,9 +19338,9 @@ pub struct Hdjnkgeffje { /// CmdId: 8370 #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] -pub struct Igbfidbinoi { +pub struct AvatarChangeCostumeNotify { #[prost(message, optional, tag = "14")] - pub egoffcgnheo: ::core::option::Option, + pub entity_info: ::core::option::Option, } /// CmdId: 28319 #[allow(clippy::derive_partial_eq_without_eq)] @@ -31064,7 +31064,7 @@ pub struct Mfdepinclgn { #[derive(Clone, PartialEq, ::prost::Message)] pub struct Inpoaflcccj { #[prost(uint32, tag = "5")] - pub kljbfbpndna: u32, + pub flycloak_id: u32, } #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] @@ -35604,7 +35604,7 @@ pub struct Pcjmneheebn { /// CmdId: 21748 #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] -pub struct Jckkocbhhfm { +pub struct AvatarChangeCostumeRsp { #[prost(uint64, tag = "5")] pub avatar_guid: u64, #[prost(uint32, tag = "3")] @@ -36775,9 +36775,9 @@ pub struct Hggggikbdml { /// CmdId: 23818 #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] -pub struct Nmkabkacpjo { +pub struct AvatarFlycloakChangeNotify { #[prost(uint32, tag = "12")] - pub kljbfbpndna: u32, + pub flycloak_id: u32, #[prost(uint64, tag = "11")] pub avatar_guid: u64, } @@ -43180,6 +43180,10 @@ pub struct AvatarDataNotify { pub cur_avatar_team_id: u32, #[prost(map = "uint32, message", tag = "12")] pub avatar_team_map: ::std::collections::HashMap, + #[prost(uint32, repeated, tag = "15")] + pub owned_flycloak_list: ::prost::alloc::vec::Vec, + #[prost(uint32, repeated, tag = "13")] + pub owned_costume_list: ::prost::alloc::vec::Vec, #[prost(message, repeated, tag = "14")] pub avatar_list: ::prost::alloc::vec::Vec, } diff --git a/proto/src/cmd_types.rs b/proto/src/cmd_types.rs index bd91141..96cf36c 100644 --- a/proto/src/cmd_types.rs +++ b/proto/src/cmd_types.rs @@ -23,3 +23,7 @@ pub const EVT_AVATAR_SIT_DOWN_RSP: u16 = 29232; pub const EVT_AVATAR_STAND_UP_NOTIFY: u16 = 8549; pub const MARK_MAP_RSP: u16 = 25569; pub const GET_SCENE_AREA_RSP: u16 = 22648; +pub const AVATAR_CHANGE_COSTUME_RSP: u16 = 21748; +pub const AVATAR_CHANGE_COSTUME_NOTIFY: u16 = 8370; +pub const AVATAR_WEAR_FLYCLOAK_RSP: u16 = 25960; +pub const AVATAR_FLYCLOAK_CHANGE_NOTIFY: u16 = 23818;