feat: complete app
This commit is contained in:
87
lib/controller/gamecontroller.dart
Normal file
87
lib/controller/gamecontroller.dart
Normal file
@ -0,0 +1,87 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:mobile_scanner/mobile_scanner.dart';
|
||||
|
||||
class GameController extends GetxController {
|
||||
final String markerSequence;
|
||||
final TextEditingController markerSequenceController =
|
||||
TextEditingController();
|
||||
|
||||
final String adminPass;
|
||||
|
||||
final Map<String, String> markerNumbersToDeclaration = {
|
||||
"4511338007860": "YG06", // Yellowish Green
|
||||
"4511338007778": "YR07", // Pale Cherry Pink
|
||||
"4511338007655": "RV04", // Shock Pink
|
||||
"4511338007808": "Y06", // Yellow
|
||||
"4511338007983": "BG09", // Blue Green
|
||||
"4511338007716": "R29", // Lipstick Red
|
||||
"4511338008058": "B29", // Ultramarine
|
||||
"4511338008171": "E29", // Brown
|
||||
"4511338007921": "G17", // Forest Green
|
||||
"4511338007594": "V09", // Violet
|
||||
"4511338008232": "100" // Black
|
||||
};
|
||||
|
||||
final String calendarQrData;
|
||||
final TextEditingController calendarQrDataController =
|
||||
TextEditingController();
|
||||
|
||||
final String finalCode;
|
||||
final TextEditingController finalCodeController = TextEditingController();
|
||||
|
||||
String storyTitle = "Das Verlassene Museum";
|
||||
String story =
|
||||
"Die Sonne stand hoch am Himmel, als Jonas durch die stillen Straßen seiner kleinen Stadt schlich. "
|
||||
"Der Wind trug das Flüstern der Bäume und das entfernte Lachen spielender Kinder mit sich, "
|
||||
"doch Jonas hatte nur ein Ziel vor Augen: das verlassene Museum am Stadtrand.\n\n"
|
||||
"Seit Jahren hörte er Geschichten über diesen geheimnisvollen Ort, und heute war der Tag, an dem er den Mut fand, ihn selbst zu erkunden. "
|
||||
"Mit klopfendem Herzen näherte sich Jonas den schweren Holztüren des Museums. "
|
||||
"Ein leises Knarren durchbrach die Stille, als er sie langsam öffnete, und ein Schauer lief ihm über den Rücken. "
|
||||
"Die Luft im Inneren war kühl und roch nach Staub und alten Geheimnissen. "
|
||||
"Jonas zückte seine Taschenlampe und trat ein.\n\n"
|
||||
"Die Strahlen der Lampe tanzten über verstaubte Vitrinen, in denen antike Artefakte lagen, die von längst vergangenen Zeiten erzählten. "
|
||||
"Verblasste Gemälde hingen an den Wänden, ihre Farben von der Zeit verschluckt, und seltsame Skulpturen warfen lange Schatten auf den Boden. "
|
||||
"Jonas spürte eine Mischung aus Ehrfurcht und Aufregung. "
|
||||
"Jeder Schritt, den er machte, ließ den Boden leise knarren, als ob das Museum selbst ihm seine Geschichten zuflüstern wollte.\n\n"
|
||||
"In einem der hinteren Räume hielt Jonas inne. "
|
||||
"Vor ihm stand ein alter Mechanismus, bedeckt mit Symbolen und Zahlen, die ihm fremd waren. "
|
||||
"Fasziniert trat er näher und strich mit den Fingern über die kalte Oberfläche. "
|
||||
"Es war, als ob das Rätsel ihn rief, als ob es darauf wartete, von ihm gelöst zu werden.\n\n"
|
||||
"Jonas setzte sich auf den Boden und begann, die Symbole zu studieren. "
|
||||
"Sein Verstand arbeitete fieberhaft, während er versuchte, die Bedeutung hinter den Zeichen zu entschlüsseln. "
|
||||
"Die Welt um ihn herum schien zu verschwinden, und er war allein mit dem Geheimnis, das das Museum verbarg.\n\n"
|
||||
"Stunden vergingen, oder vielleicht waren es nur Minuten, als Jonas schließlich aufstand. "
|
||||
"Er hatte das Rätsel nicht gelöst, doch er fühlte sich nicht enttäuscht. "
|
||||
"Stattdessen erfüllte ihn ein Gefühl der Erfüllung. "
|
||||
"Er hatte den Mut gefunden, sich seinen Ängsten zu stellen und das Abenteuer seines Lebens zu erleben.\n\n"
|
||||
"Als Jonas das Museum verließ, war die Sonne bereits untergegangen, und die ersten Sterne funkelten am Himmel. "
|
||||
"Er blickte zurück auf das alte Gebäude, das nun in der Dunkelheit lag, und lächelte. "
|
||||
"Die Welt war voller Geheimnisse, und er wusste, dass dies nur der Anfang seiner Entdeckungsreise war.";
|
||||
|
||||
final MobileScannerController markerPageScannerController =
|
||||
MobileScannerController(
|
||||
facing: CameraFacing.back,
|
||||
formats: [BarcodeFormat.ean13],
|
||||
autoStart: false,
|
||||
detectionSpeed: DetectionSpeed.noDuplicates,
|
||||
);
|
||||
|
||||
final MobileScannerController qrPageController = MobileScannerController(
|
||||
facing: CameraFacing.back,
|
||||
cameraResolution: const Size(600, 600),
|
||||
formats: [BarcodeFormat.qrCode],
|
||||
autoStart: true,
|
||||
detectionSpeed: DetectionSpeed.noDuplicates,
|
||||
);
|
||||
|
||||
GameController(
|
||||
{required this.markerSequence,
|
||||
required this.calendarQrData,
|
||||
this.finalCode = "17824",
|
||||
required this.adminPass});
|
||||
|
||||
checkMarkerString() =>
|
||||
markerSequenceController.text.toUpperCase().trim().replaceAll(' ', '') ==
|
||||
markerSequence.toUpperCase().trim().replaceAll(' ', '');
|
||||
}
|
13
lib/controller/mainpagecontroller.dart
Normal file
13
lib/controller/mainpagecontroller.dart
Normal file
@ -0,0 +1,13 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:lottis_birthday_escaperoom_app/controller/gamecontroller.dart';
|
||||
|
||||
class MainPageController extends GetxController {
|
||||
final TextEditingController markerSeqController = TextEditingController();
|
||||
final TextEditingController calendarQrDataController =
|
||||
TextEditingController();
|
||||
final TextEditingController finalCodeController =
|
||||
TextEditingController(text: '17824');
|
||||
final TextEditingController adminPassController =
|
||||
TextEditingController(text: 'lottisGeburtstag2024!');
|
||||
}
|
Reference in New Issue
Block a user