Add basic shop screen

This removes the "support me" button on the home screen and replaces it
with a link to the future shop. The rewarded video ad can be reached
from there. I also cleaned up the localizations and reformated
lib/screens/home.dart.
This commit is contained in:
Elias Projahn 2020-01-19 13:39:23 +01:00
parent 07046d8c05
commit 72aa6d7183
3 changed files with 98 additions and 50 deletions

View file

@ -1,4 +1,3 @@
import 'package:firebase_admob/firebase_admob.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
@ -9,6 +8,7 @@ import '../widgets/menu_entry.dart';
import 'game.dart';
import 'intro.dart';
import 'records.dart';
import 'shop.dart';
class HomeScreen extends StatelessWidget {
@override
@ -24,51 +24,39 @@ class HomeScreen extends StatelessWidget {
MenuEntry(
text: localizations.play,
onTap: () => Navigator.push(
context,
MaterialPageRoute(
builder: (context) => GameScreen(),
)),
context,
MaterialPageRoute(
builder: (context) => GameScreen(),
),
),
),
MenuEntry(
text: localizations.records,
onTap: () => Navigator.push(
context,
MaterialPageRoute(
builder: (context) => RecordsScreen(),
)),
context,
MaterialPageRoute(
builder: (context) => RecordsScreen(),
),
),
),
MenuEntry(
text: localizations.intro,
onTap: () => Navigator.push(
context,
MaterialPageRoute(
builder: (context) => IntroScreen(),
)),
context,
MaterialPageRoute(
builder: (context) => IntroScreen(),
),
),
),
Builder(
builder: (context) => MenuEntry(
text: localizations.ad,
onTap: () {
final ad = RewardedVideoAd.instance;
ad.listener = (event, {rewardAmount, rewardType}) {
if (event == RewardedVideoAdEvent.loaded) {
ad.show();
} else if (event == RewardedVideoAdEvent.failedToLoad) {
Scaffold.of(context).showSnackBar(SnackBar(
content: Text(localizations.noAds),
duration: const Duration(seconds: 2),
));
} else if (event == RewardedVideoAdEvent.rewarded) {
// TODO: Reward user
}
};
ad.load(
adUnitId: 'ca-app-pub-4129701777413448/6712208196',
targetingInfo: MobileAdTargetingInfo(),
);
},
text: localizations.shop,
onTap: () => Navigator.push(
context,
MaterialPageRoute(
builder: (context) => ShopScreen(),
),
),
),
),
MenuEntry(