diff --git a/assets/images/done.png b/assets/images/done.png index 62226f3..7fa52ae 100644 Binary files a/assets/images/done.png and b/assets/images/done.png differ diff --git a/assets/images/icon_crown.png b/assets/images/icon_crown.png index 2c24200..e3aaee7 100644 Binary files a/assets/images/icon_crown.png and b/assets/images/icon_crown.png differ diff --git a/assets/images/icon_diamond.png b/assets/images/icon_diamond.png deleted file mode 100644 index c1104f3..0000000 Binary files a/assets/images/icon_diamond.png and /dev/null differ diff --git a/assets/images/icon_flash.png b/assets/images/icon_flash.png deleted file mode 100644 index 9ca0a4e..0000000 Binary files a/assets/images/icon_flash.png and /dev/null differ diff --git a/assets/images/mic.png b/assets/images/mic.png deleted file mode 100644 index ca96910..0000000 Binary files a/assets/images/mic.png and /dev/null differ diff --git a/assets/images/mic_blur.png b/assets/images/mic_blur.png deleted file mode 100644 index cd6367e..0000000 Binary files a/assets/images/mic_blur.png and /dev/null differ diff --git a/assets/svg/icon_diamond.svg b/assets/svg/icon_diamond.svg new file mode 100644 index 0000000..a944d26 --- /dev/null +++ b/assets/svg/icon_diamond.svg @@ -0,0 +1,184 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/svg/icon_flash.svg b/assets/svg/icon_flash.svg new file mode 100644 index 0000000..ff02f80 --- /dev/null +++ b/assets/svg/icon_flash.svg @@ -0,0 +1,164 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/svg/mic.svg b/assets/svg/mic.svg new file mode 100644 index 0000000..1cc78fe --- /dev/null +++ b/assets/svg/mic.svg @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/svg/mic_blur.svg b/assets/svg/mic_blur.svg new file mode 100644 index 0000000..1dac0b1 --- /dev/null +++ b/assets/svg/mic_blur.svg @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/common_ui/resources/my_assets.dart b/lib/common_ui/resources/my_assets.dart index bf6a215..28c55cd 100644 --- a/lib/common_ui/resources/my_assets.dart +++ b/lib/common_ui/resources/my_assets.dart @@ -4,17 +4,12 @@ class MyAssets { factory MyAssets() => _i; /// ----- Images ----- - static const String sample = 'assets/images/sample.png'; static const String shiaMind = 'assets/images/shia_mind.png'; static const String iconProfile = 'assets/images/icon_profile.png'; - static const String iconDiamond = 'assets/images/icon_diamond.png'; - static const String iconFlash = 'assets/images/icon_flash.png'; static const String iconCrown = 'assets/images/icon_crown.png'; static const String shiaMindGroup = 'assets/images/shia_mind_group.png'; static const String cup = 'assets/images/cup.png'; static const String addBackground = 'assets/images/add_background.png'; - static const String mic = 'assets/images/mic.png'; - static const String micBLur = 'assets/images/mic_blur.png'; static const String sampleAvatar = 'assets/images/sample_avatar.png'; static const String gem1 = 'assets/images/gem_1.png'; static const String gem2 = 'assets/images/gem_2.png'; @@ -37,7 +32,6 @@ class MyAssets { static const String done = 'assets/images/done.png'; /// ----- Svg ----- - static const String sampleSvg = 'assets/svg/sample.svg'; static const String iconHome = 'assets/svg/icon_home.svg'; static const String iconShop = 'assets/svg/icon_shop.svg'; static const String iconAwards = 'assets/svg/icon_awards.svg'; @@ -64,7 +58,10 @@ class MyAssets { static const String castAwardSilver = 'assets/svg/cast_award_silver.svg'; static const String castAwardBronze = 'assets/svg/cast_award_bronze.svg'; static const String iconRank = 'assets/svg/icon_rank.svg'; - + static const String iconFlash = 'assets/svg/icon_flash.svg'; + static const String iconDiamond = 'assets/svg/icon_diamond.svg'; + static const String mic = 'assets/svg/mic.svg'; + static const String micBLur = 'assets/svg/mic_blur.svg'; /// ----- Audios ----- static const String sampleAudio = 'assets/audios/sample.mp3'; @@ -72,14 +69,32 @@ class MyAssets { /// ----- Videos ----- static const String sampleVideo = 'assets/videos/sample.mp4'; - static const List images = [ shiaMind, - question, iconProfile, - iconDiamond, - iconFlash, iconCrown, shiaMindGroup, + cup, + addBackground, + sampleAvatar, + gem1, + gem2, + gem3, + gem4, + book1, + book2, + book3, + boost1, + boost2, + boost3, + boost4, + character1, + character2, + character3, + member1, + member2, + member3, + member4, + done, ]; } diff --git a/lib/features/home/presentation/pages/widgets/home_membership.dart b/lib/features/home/presentation/pages/widgets/home_membership.dart index f45cdfd..126f32d 100644 --- a/lib/features/home/presentation/pages/widgets/home_membership.dart +++ b/lib/features/home/presentation/pages/widgets/home_membership.dart @@ -37,7 +37,7 @@ class HomeMembership extends StatelessWidget { padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 13), child: Row( children: [ - const MyImage(asset: MyAssets.iconCrown), + const MyImage(asset: MyAssets.iconCrown, size: 24), 8.w.gapWidth, Text( context.translate.pro_membership, diff --git a/lib/features/intro/presentation/controller/intro_controller.dart b/lib/features/intro/presentation/controller/intro_controller.dart index 23b4a77..5059602 100644 --- a/lib/features/intro/presentation/controller/intro_controller.dart +++ b/lib/features/intro/presentation/controller/intro_controller.dart @@ -1,5 +1,7 @@ import 'package:flutter/cupertino.dart'; +import 'package:shia_game_flutter/common_ui/resources/my_assets.dart'; import 'package:shia_game_flutter/core/params/intro_params.dart'; +import 'package:shia_game_flutter/core/routers/my_routes.dart'; import 'package:shia_game_flutter/core/status/base_status.dart'; import 'package:shia_game_flutter/features/intro/domain/entity/intro_entity.dart'; import 'package:shia_game_flutter/features/intro/domain/usecases/get_intro_usecase.dart'; @@ -13,6 +15,7 @@ class IntroController extends GetxController with StateMixin { void onInit() { super.onInit(); change('', status: RxStatus.success()); + _goToMasterPage(); } @override @@ -35,6 +38,20 @@ class IntroController extends GetxController with StateMixin { final Rx getIntroStatus = Rx(const BaseInit()); /// ------ Functions ------ + Future _precacheImage() async { + await Future.wait( + MyAssets.images.map( + (e) => precacheImage(AssetImage(e), Get.context!), + ) + ); + } + + Future _goToMasterPage() async { + await _precacheImage(); + await Future.delayed(const Duration(seconds: 2), () { + Get.toNamed(Routes.masterPage); + }); + } /// ------ Api Calls ------ Future getIntro() async { diff --git a/lib/features/shop/presentation/ui/widgets/shop_item/styles/character_style.dart b/lib/features/shop/presentation/ui/widgets/shop_item/styles/character_style.dart index 6efcdd9..4384eb1 100644 --- a/lib/features/shop/presentation/ui/widgets/shop_item/styles/character_style.dart +++ b/lib/features/shop/presentation/ui/widgets/shop_item/styles/character_style.dart @@ -63,7 +63,7 @@ class CharacterStyle extends StatelessWidget { const PositionedDirectional( top: -0, end: -5, - child: MyImage(asset: MyAssets.done), + child: MyImage(asset: MyAssets.done, size: 40), ), ], ), diff --git a/lib/main.dart b/lib/main.dart index 98bea17..dedefa7 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -31,7 +31,7 @@ class MainApp extends StatelessWidget { fallbackLocale: const Locale('en', 'US'), supportedLocales: const [Locale('en', 'US')], getPages: appPages, - initialRoute: Routes.masterPage, + initialRoute: Routes.introPage, localizationsDelegates: const [ AppLocalizations.delegate, GlobalMaterialLocalizations.delegate,