Skip to content
This repository has been archived by the owner on Mar 13, 2024. It is now read-only.

Commit

Permalink
Merge branch 'main' into alestiago/add-clouds-page
Browse files Browse the repository at this point in the history
  • Loading branch information
alestiago authored Mar 11, 2024
2 parents 39f1663 + 80ec097 commit 9af759f
Show file tree
Hide file tree
Showing 60 changed files with 971 additions and 371 deletions.
1 change: 1 addition & 0 deletions packages/trashy_road/analysis_options.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ include: package:very_good_analysis/analysis_options.5.1.0.yaml
analyzer:
exclude:
- lib/**/*.gen.dart
- lib/l10n/arb/**.dart
linter:
rules:
public_member_api_docs: false
Binary file added packages/trashy_road/assets/audio/bounce_back.mp3
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added packages/trashy_road/assets/audio/step1.mp3
Binary file not shown.
Binary file added packages/trashy_road/assets/audio/steps.mp3
Binary file not shown.
Binary file not shown.
Binary file added packages/trashy_road/assets/audio/wrong_bin.mp3
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions packages/trashy_road/l10n.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
arb-dir: lib/l10n/arb
template-arb-file: app_en.arb
output-localization-file: app_localizations.dart
synthetic-package: false
73 changes: 66 additions & 7 deletions packages/trashy_road/lib/gen/assets.gen.dart

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

19 changes: 19 additions & 0 deletions packages/trashy_road/lib/l10n/arb/app_en.arb
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"@@locale": "en",
"great": "Great!",
"@great": {
"description": "Shown to congratulate the player in the Score Page."
},
"nice": "Nice!",
"@nice": {
"description": "Shown to congratulate the player in the Score Page."
},
"okay": "Okay",
"@okay": {
"description": "Shown to congratulate the player in the Score Page."
},
"ohh": "Ohh",
"@ohh": {
"description": "Shown to congratulate the player in the Score Page."
}
}
148 changes: 148 additions & 0 deletions packages/trashy_road/lib/l10n/arb/app_localizations.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,148 @@
import 'dart:async';

import 'package:flutter/foundation.dart';
import 'package:flutter/widgets.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:intl/intl.dart' as intl;

import 'app_localizations_en.dart';

/// Callers can lookup localized strings with an instance of AppLocalizations
/// returned by `AppLocalizations.of(context)`.
///
/// Applications need to include `AppLocalizations.delegate()` in their app's
/// `localizationDelegates` list, and the locales they support in the app's
/// `supportedLocales` list. For example:
///
/// ```dart
/// import 'arb/app_localizations.dart';
///
/// return MaterialApp(
/// localizationsDelegates: AppLocalizations.localizationsDelegates,
/// supportedLocales: AppLocalizations.supportedLocales,
/// home: MyApplicationHome(),
/// );
/// ```
///
/// ## Update pubspec.yaml
///
/// Please make sure to update your pubspec.yaml to include the following
/// packages:
///
/// ```yaml
/// dependencies:
/// # Internationalization support.
/// flutter_localizations:
/// sdk: flutter
/// intl: any # Use the pinned version from flutter_localizations
///
/// # Rest of dependencies
/// ```
///
/// ## iOS Applications
///
/// iOS applications define key application metadata, including supported
/// locales, in an Info.plist file that is built into the application bundle.
/// To configure the locales supported by your app, you’ll need to edit this
/// file.
///
/// First, open your project’s ios/Runner.xcworkspace Xcode workspace file.
/// Then, in the Project Navigator, open the Info.plist file under the Runner
/// project’s Runner folder.
///
/// Next, select the Information Property List item, select Add Item from the
/// Editor menu, then select Localizations from the pop-up menu.
///
/// Select and expand the newly-created Localizations item then, for each
/// locale your application supports, add a new item and select the locale
/// you wish to add from the pop-up menu in the Value field. This list should
/// be consistent with the languages listed in the AppLocalizations.supportedLocales
/// property.
abstract class AppLocalizations {
AppLocalizations(String locale) : localeName = intl.Intl.canonicalizedLocale(locale.toString());

final String localeName;

static AppLocalizations? of(BuildContext context) {
return Localizations.of<AppLocalizations>(context, AppLocalizations);
}

static const LocalizationsDelegate<AppLocalizations> delegate = _AppLocalizationsDelegate();

/// A list of this localizations delegate along with the default localizations
/// delegates.
///
/// Returns a list of localizations delegates containing this delegate along with
/// GlobalMaterialLocalizations.delegate, GlobalCupertinoLocalizations.delegate,
/// and GlobalWidgetsLocalizations.delegate.
///
/// Additional delegates can be added by appending to this list in
/// MaterialApp. This list does not have to be used at all if a custom list
/// of delegates is preferred or required.
static const List<LocalizationsDelegate<dynamic>> localizationsDelegates = <LocalizationsDelegate<dynamic>>[
delegate,
GlobalMaterialLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
];

/// A list of this localizations delegate's supported locales.
static const List<Locale> supportedLocales = <Locale>[
Locale('en')
];

/// Shown to congratulate the player in the Score Page.
///
/// In en, this message translates to:
/// **'Great!'**
String get great;

/// Shown to congratulate the player in the Score Page.
///
/// In en, this message translates to:
/// **'Nice!'**
String get nice;

/// Shown to congratulate the player in the Score Page.
///
/// In en, this message translates to:
/// **'Okay'**
String get okay;

/// Shown to congratulate the player in the Score Page.
///
/// In en, this message translates to:
/// **'Ohh'**
String get ohh;
}

class _AppLocalizationsDelegate extends LocalizationsDelegate<AppLocalizations> {
const _AppLocalizationsDelegate();

@override
Future<AppLocalizations> load(Locale locale) {
return SynchronousFuture<AppLocalizations>(lookupAppLocalizations(locale));
}

@override
bool isSupported(Locale locale) => <String>['en'].contains(locale.languageCode);

@override
bool shouldReload(_AppLocalizationsDelegate old) => false;
}

AppLocalizations lookupAppLocalizations(Locale locale) {


// Lookup logic when only language code is specified.
switch (locale.languageCode) {
case 'en': return AppLocalizationsEn();
}

throw FlutterError(
'AppLocalizations.delegate failed to load unsupported locale "$locale". This is likely '
'an issue with the localizations generation tool. Please file an issue '
'on GitHub with a reproducible sample app and the gen-l10n configuration '
'that was used.'
);
}
18 changes: 18 additions & 0 deletions packages/trashy_road/lib/l10n/arb/app_localizations_en.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import 'app_localizations.dart';

/// The translations for English (`en`).
class AppLocalizationsEn extends AppLocalizations {
AppLocalizationsEn([String locale = 'en']) : super(locale);

@override
String get great => 'Great!';

@override
String get nice => 'Nice!';

@override
String get okay => 'Okay';

@override
String get ohh => 'Ohh';
}
15 changes: 15 additions & 0 deletions packages/trashy_road/lib/l10n/l10n.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
import 'package:flutter/widgets.dart';
import 'package:trashy_road/l10n/l10n.dart';

export 'package:trashy_road/l10n/arb/app_localizations.dart';

/// Extension for [AppLocalizations] to access it from [BuildContext].
///
/// If the [AppLocalizations] is not found, generate it using:
/// ```sh
/// # Generate new AppLocalizations (from packages/trashy_road):
/// flutter gen-l10n
/// ```
extension AppLocalizationsX on BuildContext {
AppLocalizations get l10n => AppLocalizations.of(this)!;
}
11 changes: 10 additions & 1 deletion packages/trashy_road/lib/main.dart
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ import 'package:basura/basura.dart';
import 'package:flame/cache.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:trashy_road/l10n/l10n.dart';
import 'package:trashy_road/src/audio/audio.dart';
import 'package:trashy_road/src/loading/loading.dart';
import 'package:trashy_road/src/maps/maps.dart';

Expand Down Expand Up @@ -31,12 +33,19 @@ class _MyApp extends StatelessWidget {
BlocProvider(
create: (context) => GameMapsBloc(),
),
BlocProvider(
create: (context) => AudioCubit(
audioCache: context.read<PreloadCubit>().audio,
),
),
],
child: BasuraTheme(
data: BasuraThemeData.light(),
child: MaterialApp(
title: 'Flutter Demo',
title: 'Trashy Town',
debugShowCheckedModeBanner: false,
localizationsDelegates: AppLocalizations.localizationsDelegates,
supportedLocales: AppLocalizations.supportedLocales,
theme: ThemeData(
colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
useMaterial3: true,
Expand Down
1 change: 1 addition & 0 deletions packages/trashy_road/lib/src/audio/audio.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export 'bloc/audio_cubit.dart';
Loading

0 comments on commit 9af759f

Please sign in to comment.