mod: show lv6_s

Closes #687

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-04-15 17:43:44 +08:00
parent 14f8ec37c5
commit bc8907b3ef
22 changed files with 26 additions and 8 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 514 B

After

Width:  |  Height:  |  Size: 915 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 524 B

After

Width:  |  Height:  |  Size: 876 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 518 B

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 541 B

After

Width:  |  Height:  |  Size: 991 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 498 B

After

Width:  |  Height:  |  Size: 912 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 539 B

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 517 B

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
assets/images/lv/lv6_s.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@@ -11,6 +11,7 @@ class MemberInfoModel {
this.official,
this.vip,
this.liveRoom,
this.isSeniorMember,
});
int? mid;
@@ -24,6 +25,7 @@ class MemberInfoModel {
Map? official;
Vip? vip;
LiveRoom? liveRoom;
int? isSeniorMember;
MemberInfoModel.fromJson(Map<String, dynamic> json) {
mid = json['mid'];
@@ -38,6 +40,7 @@ class MemberInfoModel {
vip = Vip.fromJson(json['vip']);
liveRoom =
json['live_room'] != null ? LiveRoom.fromJson(json['live_room']) : null;
isSeniorMember = json['is_senior_member'];
}
}

View File

@@ -123,6 +123,7 @@ class SearchUserItemModel {
this.isLive,
this.roomId,
this.officialVerify,
this.isSeniorMember,
});
String? type;
@@ -141,6 +142,7 @@ class SearchUserItemModel {
int? isLive;
int? roomId;
Map? officialVerify;
int? isSeniorMember;
SearchUserItemModel.fromJson(Map<String, dynamic> json) {
type = json['type'];
@@ -159,6 +161,7 @@ class SearchUserItemModel {
isLive = json['is_live'];
roomId = json['room_id'];
officialVerify = json['official_verify'];
isSeniorMember = json['is_senior_member'];
}
}

View File

@@ -29,6 +29,7 @@ class UserInfoData {
this.wallet,
this.hasShop,
this.shopUrl,
this.isSeniorMember,
});
@HiveField(0)
bool? isLogin;
@@ -78,6 +79,8 @@ class UserInfoData {
bool? hasShop;
@HiveField(23)
String? shopUrl;
@HiveField(24)
int? isSeniorMember;
UserInfoData.fromJson(Map<String, dynamic> json) {
isLogin = json['isLogin'] ?? false;
@@ -106,6 +109,7 @@ class UserInfoData {
wallet = json['wallet'];
hasShop = json['has_shop'];
shopUrl = json['shop_url'];
isSeniorMember = json['is_senior_member'];
}
}

View File

@@ -41,13 +41,14 @@ class UserInfoDataAdapter extends TypeAdapter<UserInfoData> {
wallet: (fields[21] as Map?)?.cast<dynamic, dynamic>(),
hasShop: fields[22] as bool?,
shopUrl: fields[23] as String?,
isSeniorMember: fields[24] as int?,
);
}
@override
void write(BinaryWriter writer, UserInfoData obj) {
writer
..writeByte(24)
..writeByte(25)
..writeByte(0)
..write(obj.isLogin)
..writeByte(1)
@@ -95,7 +96,9 @@ class UserInfoDataAdapter extends TypeAdapter<UserInfoData> {
..writeByte(22)
..write(obj.hasShop)
..writeByte(23)
..write(obj.shopUrl);
..write(obj.shopUrl)
..writeByte(24)
..write(obj.isSeniorMember);
}
@override

View File

@@ -130,7 +130,7 @@ class UserInfoCard extends StatelessWidget {
),
const SizedBox(width: 8),
Image.asset(
'assets/images/lv/lv${card.levelInfo?.currentLevel}.png',
'assets/images/lv/lv${card.levelInfo?.identity == 2 ? '6_s' : card.levelInfo?.currentLevel}.png',
height: 11,
semanticLabel: '等级${card.levelInfo?.currentLevel}',
),

View File

@@ -176,7 +176,7 @@ class _MinePageState extends State<MinePage> {
),
const SizedBox(width: 4),
Image.asset(
'assets/images/lv/lv${_mineController.userInfo.value.levelInfo != null ? _mineController.userInfo.value.levelInfo!.currentLevel : '0'}.png',
'assets/images/lv/lv${_mineController.userInfo.value.isSeniorMember == 1 ? '6_s' : _mineController.userInfo.value.levelInfo != null ? _mineController.userInfo.value.levelInfo!.currentLevel : '0'}.png',
height: 10,
semanticLabel:
'等级:${_mineController.userInfo.value.levelInfo != null ? _mineController.userInfo.value.levelInfo!.currentLevel : '0'}',

View File

@@ -27,6 +27,7 @@ Widget searchArticlePanel(
return CustomScrollView(
controller: searchPanelCtr.scrollController,
physics: const AlwaysScrollableScrollPhysics(),
slivers: [
SliverPersistentHeader(
pinned: false,

View File

@@ -14,6 +14,7 @@ Widget searchLivePanel(
Loading() => loadingWidget,
Success() => loadingState.response?.isNotEmpty == true
? GridView.builder(
physics: const AlwaysScrollableScrollPhysics(),
padding: EdgeInsets.only(
left: StyleString.safeSpace,
right: StyleString.safeSpace,

View File

@@ -17,6 +17,7 @@ Widget searchBangumiPanel(
Success() => loadingState.response?.isNotEmpty == true
? CustomScrollView(
controller: ctr.scrollController,
physics: const AlwaysScrollableScrollPhysics(),
slivers: [
SliverPadding(
padding: EdgeInsets.only(

View File

@@ -25,6 +25,7 @@ Widget searchUserPanel(
return CustomScrollView(
controller: searchPanelCtr.scrollController,
physics: const AlwaysScrollableScrollPhysics(),
slivers: [
SliverPersistentHeader(
pinned: false,
@@ -151,7 +152,7 @@ Widget searchUserPanel(
),
const SizedBox(width: 6),
Image.asset(
'assets/images/lv/lv${i!.level}.png',
'assets/images/lv/lv${i.isSeniorMember == 1 ? '6_s' : i!.level}.png',
height: 11,
semanticLabel: '等级${i.level}',
),

View File

@@ -23,6 +23,7 @@ Widget searchVideoPanel(
final controller = Get.put(VideoPanelController(), tag: searchPanelCtr.tag);
return CustomScrollView(
controller: searchPanelCtr.scrollController,
physics: const AlwaysScrollableScrollPhysics(),
slivers: [
SliverPersistentHeader(
pinned: false,

View File

@@ -274,7 +274,7 @@ class _HorizontalMemberPageState extends State<HorizontalMemberPage> {
),
const SizedBox(width: 8),
Image.asset(
'assets/images/lv/lv${memberInfoModel.level}.png',
'assets/images/lv/lv${memberInfoModel.isSeniorMember == 1 ? '6_s' : memberInfoModel.level}.png',
height: 11,
),
],

View File

@@ -245,7 +245,7 @@ Widget _itemWidget(BuildContext context, dynamic item) {
const SizedBox(width: 6),
Image.asset(
'assets/images/lv/lv${item['author']['level']}.png',
height: 11,
height: 19,
),
],
),

View File

@@ -302,7 +302,7 @@ class ReplyItemGrpc extends StatelessWidget {
),
const SizedBox(width: 6),
Image.asset(
'assets/images/lv/lv${replyItem.member.level}.png',
'assets/images/lv/lv${replyItem.member.isSeniorMember == 1 ? '6_s' : replyItem.member.level}.png',
height: 11,
semanticLabel: "等级:${replyItem.member.level}",
),