Achievements fix + they sorted + taka
This commit is contained in:
parent
ee3bbe6369
commit
892b414f56
|
@ -6,7 +6,7 @@ Tetra Stats works with TETR.IO Tetra Channel API, providing data from it and cal
|
||||||
|
|
||||||
You can [download an app](https://github.com/dan63047/TetraStats/releases), or [use web version](https://ts.dan63.by).
|
You can [download an app](https://github.com/dan63047/TetraStats/releases), or [use web version](https://ts.dan63.by).
|
||||||
|
|
||||||
![Screenshot of the app 1](https://imgur.com/e8CYvj3.png)
|
![Screenshot of the app 1](https://i.imgur.com/Hl02YkX.png)
|
||||||
|
|
||||||
# Available functionality
|
# Available functionality
|
||||||
- Advanced stats for players
|
- Advanced stats for players
|
||||||
|
|
|
@ -6,7 +6,7 @@ flutter_app:
|
||||||
|
|
||||||
control:
|
control:
|
||||||
Package: tetra-stats
|
Package: tetra-stats
|
||||||
Version: 2.0.3
|
Version: 2.0.4
|
||||||
Architecture: amd64
|
Architecture: amd64
|
||||||
Essential: no
|
Essential: no
|
||||||
Priority: optional
|
Priority: optional
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
[Desktop Entry]
|
[Desktop Entry]
|
||||||
Version=2.0.3
|
Version=2.0.4
|
||||||
Name=Tetra Stats
|
Name=Tetra Stats
|
||||||
GenericName=Tetra Stats
|
GenericName=Tetra Stats
|
||||||
Comment=Track your and other player stats in TETR.IO
|
Comment=Track your and other player stats in TETR.IO
|
||||||
|
|
|
@ -750,6 +750,7 @@ class TetrioService extends DB {
|
||||||
int entries = 100;
|
int entries = 100;
|
||||||
String? prisecter;
|
String? prisecter;
|
||||||
while (entries > 0){
|
while (entries > 0){
|
||||||
|
await Future<void>.delayed(const Duration(seconds: 1));
|
||||||
TetraLeagueBetaStream stream = await fetchTLStream(id, prisecter: prisecter);
|
TetraLeagueBetaStream stream = await fetchTLStream(id, prisecter: prisecter);
|
||||||
if (stream.records.isEmpty) break;
|
if (stream.records.isEmpty) break;
|
||||||
records.addAll(stream.records);
|
records.addAll(stream.records);
|
||||||
|
|
|
@ -593,10 +593,10 @@ class AchievementSummary extends StatelessWidget{
|
||||||
),
|
),
|
||||||
child: ClipRect(
|
child: ClipRect(
|
||||||
child: Align(
|
child: Align(
|
||||||
alignment: Alignment.topLeft.add(Alignment(0.286 * (((achievement?.k??1) - 1) % 8), 0.286 * (((achievement?.k??0) - 1) / 8).floor())),
|
alignment: Alignment.topLeft.add(Alignment(0.286 * (((achievement?.k??1) - 1) % 8), 0.286 * ((((achievement?.k??0) - 1) / 8).floor() % 8))),
|
||||||
heightFactor: 0.125,
|
heightFactor: 0.125,
|
||||||
widthFactor: 0.125,
|
widthFactor: 0.125,
|
||||||
child: Image.asset("res/icons/achievements.png", width: 2048, height: 2048, scale: 1, color: achievement?.v == null ? Colors.grey : achievementColors[min(achievement!.rank!, 6)]),
|
child: Image.asset("res/icons/achievements${(achievement?.k??1).floor() ~/ 64}.png", width: 2048, height: 2048, scale: 1, color: achievement?.v == null ? Colors.grey : achievementColors[min(achievement!.rank!, 6)]),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
@ -1219,64 +1219,16 @@ class _DestinationHomeState extends State<DestinationHome> with SingleTickerProv
|
||||||
closestAverageBlitz = blitzAverages.entries.last;
|
closestAverageBlitz = blitzAverages.entries.last;
|
||||||
blitzBetterThanClosestAverage = false;
|
blitzBetterThanClosestAverage = false;
|
||||||
}
|
}
|
||||||
List<Achievement> tlAchievements = snapshot.data!.summaries!.achievements.isNotEmpty ? <Achievement>[
|
List<Achievement> tlAchievements = snapshot.data!.summaries!.achievements.isNotEmpty ? snapshot.data!.summaries!.achievements.where((e) => e.category == "league").toList() : [];
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 10),
|
List<Achievement> qpAchievements = snapshot.data!.summaries!.achievements.isNotEmpty ? snapshot.data!.summaries!.achievements.where((e) => e.category == "zenith" && !e.object.contains("Expert Mode")).toList() : [];
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 12),
|
List<Achievement> qpExAchievements = snapshot.data!.summaries!.achievements.isNotEmpty ? snapshot.data!.summaries!.achievements.where((e) => e.category == "zenith" && e.object.contains("Expert Mode")).toList() : [];
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 13),
|
List<Achievement> sprintAchievements = snapshot.data!.summaries!.achievements.isNotEmpty ? snapshot.data!.summaries!.achievements.where((e) => e.category == "solo" && !e.object.contains("BLITZ")).toList() : [];
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 14),
|
List<Achievement> blitzAchievements = snapshot.data!.summaries!.achievements.isNotEmpty ? snapshot.data!.summaries!.achievements.where((e) => e.category == "solo" && e.object.contains("BLITZ")).toList() : [];
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 15),
|
tlAchievements.sort((a, b) => a.o! - b.o!);
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 47),
|
|
||||||
] : [];
|
|
||||||
List<Achievement> qpAchievements = snapshot.data!.summaries!.achievements.isNotEmpty ? <Achievement>[
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 16),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 17),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 18),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 20),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 21),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 22),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 23),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 24),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 25),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 26),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 27),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 28),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 29),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 30),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 33),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 41),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 43),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 44),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 45),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 46),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 51),
|
|
||||||
if (snapshot.data!.summaries!.achievements.any((e) => e.k == 54)) snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 54),
|
|
||||||
] : [];
|
|
||||||
List<Achievement> qpExAchievements = snapshot.data!.summaries!.achievements.isNotEmpty ? <Achievement>[
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 19),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 31),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 32),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 34),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 40),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 49),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 50),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 53),
|
|
||||||
] : [];
|
|
||||||
List<Achievement> sprintAchievements = snapshot.data!.summaries!.achievements.isNotEmpty ? <Achievement>[
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 5),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 7),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 8),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 9),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 36),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 37),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 38),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 48),
|
|
||||||
] : [];
|
|
||||||
List<Achievement> blitzAchievements = snapshot.data!.summaries!.achievements.isNotEmpty ? <Achievement>[
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 6),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 39),
|
|
||||||
snapshot.data!.summaries!.achievements.firstWhere((e) => e.k == 52),
|
|
||||||
] : [];
|
|
||||||
qpAchievements.sort((a, b) => a.o! - b.o!);
|
qpAchievements.sort((a, b) => a.o! - b.o!);
|
||||||
|
qpExAchievements.sort((a, b) => a.o! - b.o!);
|
||||||
|
sprintAchievements.sort((a, b) => a.o! - b.o!);
|
||||||
|
blitzAchievements.sort((a, b) => a.o! - b.o!);
|
||||||
return TweenAnimationBuilder(
|
return TweenAnimationBuilder(
|
||||||
duration: Durations.long4,
|
duration: Durations.long4,
|
||||||
tween: Tween<double>(begin: 0, end: 1),
|
tween: Tween<double>(begin: 0, end: 1),
|
||||||
|
|
|
@ -2,7 +2,7 @@ name: tetra_stats
|
||||||
description: Track your and other player stats in TETR.IO
|
description: Track your and other player stats in TETR.IO
|
||||||
publish_to: 'none'
|
publish_to: 'none'
|
||||||
|
|
||||||
version: 2.0.3+44
|
version: 2.0.4+45
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
sdk: '>=3.0.0'
|
sdk: '>=3.0.0'
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 330 KiB |
Binary file not shown.
After Width: | Height: | Size: 332 KiB |
Binary file not shown.
After Width: | Height: | Size: 53 KiB |
|
@ -131,7 +131,7 @@
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<!-- This script adds the flutter initialization JS code -->
|
<!-- This script adds the flutter initialization JS code -->
|
||||||
<script src="flutter.js?version=2.0.3" defer></script>
|
<script src="flutter.js?version=2.0.4" defer></script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="preloader">
|
<div id="preloader">
|
||||||
|
|
Loading…
Reference in New Issue