아이폰 지원 요구로 Android 전용 Kotlin 스택을 크로스플랫폼 Flutter로 교체. - app/: Flutter 프로젝트(android+ios). 코어 로직은 순수 Dart 모듈 app/lib/engine.dart 로 이식(SRS+180 킥·7-bag·홀드·고스트·락딜레이·T-spin/mini·콤보/B2B). 웹/Kotlin 판과 동일 알고리즘. - app/test/engine_test.dart: Dart 테스트 24개 전부 통과, flutter analyze 0 issue. - 이전 android/(Kotlin) 모듈 제거(Flutter로 대체). README에 Flutter 전환 + iOS 빌드 제약(맥 필요) 명시. - 게임 UI(목업 ② + §11 터치)와 설치용 빌드는 다음 단계.
35 lines
961 B
Dart
35 lines
961 B
Dart
import 'package:flutter/material.dart';
|
|
|
|
// TETRIG 진입점 (Flutter, Android + iOS).
|
|
// 게임 UI(목업 ② 인게임 + §11 터치 버튼)는 다음 단계에서 이 자리에 붙는다.
|
|
// 코어 로직은 lib/engine.dart (UI와 분리, Dart 테스트로 검증됨).
|
|
|
|
void main() => runApp(const TetrigApp());
|
|
|
|
class TetrigApp extends StatelessWidget {
|
|
const TetrigApp({super.key});
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return const MaterialApp(
|
|
title: 'TETRIG',
|
|
debugShowCheckedModeBanner: false,
|
|
home: Scaffold(
|
|
backgroundColor: Color(0xFF17161B), // INK
|
|
body: Center(
|
|
child: Text(
|
|
'TETRIG',
|
|
style: TextStyle(
|
|
color: Color(0xFFEDE7DA), // BONE
|
|
fontSize: 44,
|
|
fontWeight: FontWeight.w900,
|
|
fontStyle: FontStyle.italic,
|
|
letterSpacing: 1,
|
|
),
|
|
),
|
|
),
|
|
),
|
|
);
|
|
}
|
|
}
|