Migrate all Dart packages to a single wolf_3d_dart package
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com>
This commit is contained in:
@@ -1,10 +1,10 @@
|
||||
import 'dart:async';
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:wolf_3d_data/wolf_3d_data.dart';
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_engine/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_input/wolf_3d_input.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_input.dart';
|
||||
|
||||
// Helper to gracefully exit and restore the terminal
|
||||
void exitCleanly(int code) {
|
||||
|
||||
@@ -8,9 +8,5 @@ environment:
|
||||
resolution: workspace
|
||||
|
||||
dependencies:
|
||||
wolf_3d_data:
|
||||
wolf_3d_data_types:
|
||||
wolf_3d_engine:
|
||||
wolf_3d_input:
|
||||
wolf_3d_synth:
|
||||
wolf_3d_dart:
|
||||
wolf_3d_assets:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_flutter/wolf_3d.dart';
|
||||
import 'package:wolf_3d_gui/screens/game_screen.dart';
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_flutter/wolf_3d.dart';
|
||||
import 'package:wolf_3d_gui/screens/difficulty_screen.dart';
|
||||
import 'package:wolf_3d_gui/screens/sprite_gallery.dart';
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_engine/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_flutter/wolf_3d_input_flutter.dart';
|
||||
import 'package:wolf_3d_input/wolf_3d_input.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_input.dart';
|
||||
import 'package:wolf_3d_renderer/wolf_3d_ascii_renderer.dart';
|
||||
import 'package:wolf_3d_renderer/wolf_3d_flutter_renderer.dart';
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_flutter/wolf_3d.dart';
|
||||
import 'package:wolf_3d_gui/screens/episode_screen.dart';
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/wolf_3d_entities.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_entities.dart';
|
||||
import 'package:wolf_3d_flutter/wolf_3d.dart';
|
||||
|
||||
class SpriteGallery extends StatelessWidget {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
|
||||
class VgaGallery extends StatelessWidget {
|
||||
final List<VgaImage> images;
|
||||
|
||||
@@ -9,13 +9,8 @@ environment:
|
||||
resolution: workspace
|
||||
|
||||
dependencies:
|
||||
wolf_3d_data: any
|
||||
wolf_3d_data_types: any
|
||||
wolf_3d_synth: any
|
||||
wolf_3d_engine: any
|
||||
wolf_3d_entities: any
|
||||
wolf_3d_dart:
|
||||
wolf_3d_renderer: any
|
||||
wolf_3d_input: any
|
||||
wolf_3d_flutter: any
|
||||
|
||||
flutter:
|
||||
|
||||
140
package.sh
Executable file
140
package.sh
Executable file
@@ -0,0 +1,140 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Exit immediately if a command exits with a non-zero status
|
||||
set -e
|
||||
|
||||
# ==========================================
|
||||
# 1. Identify Candidate Packages & Dependents
|
||||
# ==========================================
|
||||
PACKAGES=("wolf_3d_data" "wolf_3d_data_types" "wolf_3d_engine" "wolf_3d_entities" "wolf_3d_input" "wolf_3d_synth")
|
||||
DEPENDENTS=("apps/wolf_3d_cli" "apps/wolf_3d_gui" "packages/wolf_3d_flutter" "packages/wolf_3d_renderer")
|
||||
NEW_PKG="wolf_3d_dart"
|
||||
|
||||
echo "Starting migration to $NEW_PKG..."
|
||||
|
||||
# ==========================================
|
||||
# 2. Create the New Package wolf_3d_dart
|
||||
# ==========================================
|
||||
echo "Creating new package structure..."
|
||||
mkdir -p "packages/$NEW_PKG/lib/src"
|
||||
|
||||
# Initialize a base pubspec.yaml
|
||||
cat <<EOF > "packages/$NEW_PKG/pubspec.yaml"
|
||||
name: $NEW_PKG
|
||||
description: A combined package for all non-Flutter components of wolf 3D
|
||||
version: 0.0.1
|
||||
resolution: workspace
|
||||
|
||||
environment:
|
||||
sdk: ^3.11.1
|
||||
|
||||
dependencies:
|
||||
EOF
|
||||
|
||||
# Carefully extract dependencies from source packages (ignoring the wolf_3d packages themselves)
|
||||
touch temp_deps.txt
|
||||
for pkg in "${PACKAGES[@]}"; do
|
||||
if [ -f "packages/$pkg/pubspec.yaml" ]; then
|
||||
# Use awk to extract lines under 'dependencies:' until a new unindented section starts
|
||||
awk '/^dependencies:/{flag=1; next} /^[a-zA-Z]/{flag=0} flag && /^[ \t]+[a-zA-Z0-9_]+:/ {print}' "packages/$pkg/pubspec.yaml" >> temp_deps.txt
|
||||
fi
|
||||
done
|
||||
|
||||
# Deduplicate dependencies, filter out the old packages, and append to pubspec.yaml
|
||||
sort -u temp_deps.txt | grep -v "wolf_3d_" >> "packages/$NEW_PKG/pubspec.yaml" || true
|
||||
rm temp_deps.txt
|
||||
|
||||
cat <<EOF >> "packages/$NEW_PKG/pubspec.yaml"
|
||||
|
||||
dev_dependencies:
|
||||
lints: ^3.0.0
|
||||
test: ^1.24.0
|
||||
EOF
|
||||
|
||||
# ==========================================
|
||||
# 3 & 4. Migrate Code, Entry Points & Refactor Internal Imports
|
||||
# ==========================================
|
||||
echo "Migrating code and updating imports..."
|
||||
|
||||
for pkg in "${PACKAGES[@]}"; do
|
||||
SUFFIX="${pkg#wolf_3d_}" # Removes the 'wolf_3d_' prefix
|
||||
|
||||
# 3.1 & 3.2 Move Internal Code and Entry Point
|
||||
mkdir -p "packages/$NEW_PKG/lib/src/$SUFFIX"
|
||||
|
||||
# Copy instead of move for safety during script execution (we delete originals at the end)
|
||||
if [ -d "packages/$pkg/lib/src" ] && [ "$(ls -A "packages/$pkg/lib/src")" ]; then
|
||||
cp -R "packages/$pkg/lib/src/"* "packages/$NEW_PKG/lib/src/$SUFFIX/"
|
||||
fi
|
||||
|
||||
if [ -f "packages/$pkg/lib/$pkg.dart" ]; then
|
||||
cp "packages/$pkg/lib/$pkg.dart" "packages/$NEW_PKG/lib/$pkg.dart"
|
||||
|
||||
# 3.3 Update Entry Point Paths (export 'src/... -> export 'src/suffix/...)
|
||||
sed -i "s|export 'src/|export 'src/$SUFFIX/|g" "packages/$NEW_PKG/lib/$pkg.dart"
|
||||
sed -i "s|export \"src/|export \"src/$SUFFIX/|g" "packages/$NEW_PKG/lib/$pkg.dart"
|
||||
fi
|
||||
done
|
||||
|
||||
# 4.1 & 4.2 Refactor Internal Imports (Run this globally on the new package)
|
||||
for pkg in "${PACKAGES[@]}"; do
|
||||
SUFFIX="${pkg#wolf_3d_}"
|
||||
|
||||
# Find all Dart files in the new package
|
||||
find "packages/$NEW_PKG/lib" -name "*.dart" -type f | while read -r file; do
|
||||
# 1st Pass: Fix deep paths (package:wolf_3d_data/src/... -> package:wolf_3d_dart/src/data/...)
|
||||
sed -i "s|package:$pkg/src/|package:$NEW_PKG/src/$SUFFIX/|g" "$file"
|
||||
|
||||
# 2nd Pass: Fix root imports (package:wolf_3d_data/... -> package:wolf_3d_dart/...)
|
||||
sed -i "s|package:$pkg/|package:$NEW_PKG/|g" "$file"
|
||||
done
|
||||
done
|
||||
|
||||
# ==========================================
|
||||
# 5. Update Dependents (Apps and Other Packages)
|
||||
# ==========================================
|
||||
echo "Updating dependent apps and packages..."
|
||||
|
||||
for target in "${DEPENDENTS[@]}"; do
|
||||
if [ -d "$target" ]; then
|
||||
# 5.1 Update pubspec.yaml Files
|
||||
if [ -f "$target/pubspec.yaml" ]; then
|
||||
# Remove old dependencies
|
||||
for pkg in "${PACKAGES[@]}"; do
|
||||
sed -i "/^[[:space:]]*$pkg:/d" "$target/pubspec.yaml"
|
||||
done
|
||||
|
||||
# Add new dependency under dependencies block if not present
|
||||
if ! grep -q "$NEW_PKG:" "$target/pubspec.yaml"; then
|
||||
sed -i "/^dependencies:/a\\ $NEW_PKG:" "$target/pubspec.yaml"
|
||||
fi
|
||||
fi
|
||||
|
||||
# 5.2 Update Imports in dependent dart files
|
||||
for pkg in "${PACKAGES[@]}"; do
|
||||
SUFFIX="${pkg#wolf_3d_}"
|
||||
find "$target" -name "*.dart" -type f | while read -r file; do
|
||||
# Match user requirement: package:wolf_3d_<suffix>/wolf_3d_<suffix>.dart -> package:wolf_3d_dart/wolf_3d_<suffix>.dart
|
||||
sed -i "s|package:$pkg/$pkg.dart|package:$NEW_PKG/$pkg.dart|g" "$file"
|
||||
|
||||
# Catch any stray deep imports just in case
|
||||
sed -i "s|package:$pkg/src/|package:$NEW_PKG/src/$SUFFIX/|g" "$file"
|
||||
sed -i "s|package:$pkg/|package:$NEW_PKG/|g" "$file"
|
||||
done
|
||||
done
|
||||
fi
|
||||
done
|
||||
|
||||
# ==========================================
|
||||
# 6. Cleanup and Validation
|
||||
# ==========================================
|
||||
echo "Cleaning up old packages..."
|
||||
for pkg in "${PACKAGES[@]}"; do
|
||||
rm -rf "packages/$pkg"
|
||||
done
|
||||
|
||||
echo "Running workspace refresh and tests..."
|
||||
dart pub get || echo "⚠️ 'dart pub get' failed. Check your new pubspec.yaml."
|
||||
dart test || echo "⚠️ Tests failed. Please review the output."
|
||||
|
||||
echo "Migration complete!"
|
||||
@@ -2,9 +2,9 @@ import 'dart:io';
|
||||
import 'dart:typed_data';
|
||||
|
||||
import 'package:crypto/crypto.dart';
|
||||
import 'package:wolf_3d_data/src/data_version.dart';
|
||||
import 'package:wolf_3d_data/src/wl_parser.dart';
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/src/data/data_version.dart';
|
||||
import 'package:wolf_3d_dart/src/data/wl_parser.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
|
||||
/// dart:io implementation for directory discovery with version integrity checks.
|
||||
Future<Map<GameVersion, WolfensteinData>> discoverInDirectory({
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
|
||||
/// Web-safe stub for directory discovery.
|
||||
Future<Map<GameVersion, WolfensteinData>> discoverInDirectory({
|
||||
@@ -2,8 +2,8 @@ import 'dart:convert';
|
||||
import 'dart:typed_data';
|
||||
|
||||
import 'package:crypto/crypto.dart' show md5;
|
||||
import 'package:wolf_3d_data/src/data_version.dart';
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/src/data/data_version.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
|
||||
abstract class WLParser {
|
||||
// --- Original Song Lookup Tables ---
|
||||
@@ -1,8 +1,8 @@
|
||||
import 'dart:typed_data';
|
||||
|
||||
import 'package:crypto/crypto.dart'; // Import for MD5
|
||||
import 'package:wolf_3d_data/src/data_version.dart'; // Import your enum
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/src/data/data_version.dart'; // Import your enum
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
|
||||
import 'io/discovery_stub.dart'
|
||||
if (dart.library.io) 'io/discovery_io.dart'
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
|
||||
class EnemyMapData {
|
||||
final int baseId;
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
|
||||
class Episode {
|
||||
final String name;
|
||||
@@ -1,5 +1,5 @@
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/wolf_3d_entities.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_entities.dart';
|
||||
|
||||
abstract class MapObject {
|
||||
// --- Player Spawns ---
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
|
||||
class WolfLevel {
|
||||
final String name;
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
|
||||
class WolfensteinData {
|
||||
final GameVersion version;
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
|
||||
abstract class EngineAudio {
|
||||
WolfensteinData? activeGame;
|
||||
@@ -1,5 +1,5 @@
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_engine/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_engine.dart';
|
||||
|
||||
class CliSilentAudio implements EngineAudio {
|
||||
@override
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:wolf_3d_entities/wolf_3d_entities.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_entities.dart';
|
||||
|
||||
/// A pure, framework-agnostic snapshot of the player's intended actions for a single frame.
|
||||
class EngineInput {
|
||||
@@ -1,7 +1,7 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/wolf_3d_entities.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_entities.dart';
|
||||
|
||||
class DoorManager {
|
||||
// Key is '$x,$y'
|
||||
@@ -1,6 +1,6 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
|
||||
class Pushwall {
|
||||
int x;
|
||||
@@ -1,7 +1,7 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/wolf_3d_entities.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_entities.dart';
|
||||
|
||||
enum WeaponSwitchState { idle, lowering, raising }
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:arcane_helper_utils/arcane_helper_utils.dart';
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_engine/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_engine.dart';
|
||||
|
||||
class AsciiTheme {
|
||||
/// The character ramp, ordered from most dense (index 0) to least dense (last index).
|
||||
@@ -1,8 +1,8 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_engine/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_entities/wolf_3d_entities.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_entities.dart';
|
||||
|
||||
abstract class Rasterizer {
|
||||
late List<double> zBuffer;
|
||||
@@ -1,7 +1,7 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_engine/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_engine.dart';
|
||||
|
||||
class SoftwareRasterizer extends Rasterizer {
|
||||
late FrameBuffer _buffer;
|
||||
@@ -1,9 +1,9 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_engine/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_entities/wolf_3d_entities.dart';
|
||||
import 'package:wolf_3d_input/wolf_3d_input.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_entities.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_input.dart';
|
||||
|
||||
class WolfEngine {
|
||||
WolfEngine({
|
||||
@@ -1,5 +1,5 @@
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/src/entity.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entity.dart';
|
||||
|
||||
enum CollectibleType { ammo, health, treasure, weapon, key }
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/wolf_3d_entities.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_entities.dart';
|
||||
|
||||
class DeadAardwolf extends Decorative {
|
||||
static const int sprite = 96;
|
||||
@@ -1,5 +1,5 @@
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/wolf_3d_entities.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_entities.dart';
|
||||
|
||||
class DeadGuard extends Decorative {
|
||||
/// The sprite index in VSWAP for the final "dead" frame of a Guard.
|
||||
@@ -1,5 +1,5 @@
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/src/entity.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entity.dart';
|
||||
|
||||
class Decorative extends Entity {
|
||||
Decorative({
|
||||
@@ -1,8 +1,8 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_entities/src/entity.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entity.dart';
|
||||
|
||||
class HansGrosse extends Enemy {
|
||||
static const double speed = 0.04;
|
||||
@@ -1,10 +1,10 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy_animation.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy_type.dart';
|
||||
import 'package:wolf_3d_entities/src/entity.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy_animation.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy_type.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entity.dart';
|
||||
|
||||
class Dog extends Enemy {
|
||||
static const double speed = 0.05;
|
||||
@@ -1,13 +1,13 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/dog.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy_type.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/guard.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/mutant.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/officer.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/ss.dart';
|
||||
import 'package:wolf_3d_entities/src/entity.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/dog.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy_type.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/guard.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/mutant.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/officer.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/ss.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entity.dart';
|
||||
|
||||
abstract class Enemy extends Entity {
|
||||
Enemy({
|
||||
@@ -1,7 +1,7 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy_animation.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy_animation.dart';
|
||||
|
||||
class EnemyAnimationMap {
|
||||
final SpriteFrameRange idle;
|
||||
@@ -1,10 +1,10 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy_animation.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy_type.dart';
|
||||
import 'package:wolf_3d_entities/src/entity.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy_animation.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy_type.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entity.dart';
|
||||
|
||||
class Guard extends Enemy {
|
||||
static const double speed = 0.03;
|
||||
@@ -1,10 +1,10 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy_animation.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy_type.dart';
|
||||
import 'package:wolf_3d_entities/src/entity.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy_animation.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy_type.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entity.dart';
|
||||
|
||||
class Mutant extends Enemy {
|
||||
static const double speed = 0.04;
|
||||
@@ -1,10 +1,10 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy_animation.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy_type.dart';
|
||||
import 'package:wolf_3d_entities/src/entity.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy_animation.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy_type.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entity.dart';
|
||||
|
||||
class Officer extends Enemy {
|
||||
static const double speed = 0.055;
|
||||
@@ -1,10 +1,10 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy_animation.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy_type.dart';
|
||||
import 'package:wolf_3d_entities/src/entity.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy_animation.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy_type.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entity.dart';
|
||||
|
||||
class SS extends Enemy {
|
||||
static const double speed = 0.04;
|
||||
@@ -1,8 +1,8 @@
|
||||
import 'dart:math' as math;
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_entities/src/entity.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entity.dart';
|
||||
|
||||
enum WeaponState { idle, firing }
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:wolf_3d_entities/src/entities/weapon/weapon.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/weapon/weapon.dart';
|
||||
|
||||
class ChainGun extends Weapon {
|
||||
ChainGun()
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:wolf_3d_entities/src/entities/weapon/weapon.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/weapon/weapon.dart';
|
||||
|
||||
class Knife extends Weapon {
|
||||
Knife()
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:wolf_3d_entities/src/entities/weapon/weapon.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/weapon/weapon.dart';
|
||||
|
||||
class MachineGun extends Weapon {
|
||||
MachineGun()
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:wolf_3d_entities/src/entities/weapon/weapon.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/weapon/weapon.dart';
|
||||
|
||||
class Pistol extends Weapon {
|
||||
Pistol()
|
||||
@@ -1,4 +1,4 @@
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
|
||||
enum EntityState { staticObj, ambush, idle, patrolling, attacking, pain, dead }
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/collectible.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/decorations/dead_aardwolf.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/decorations/dead_guard.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/decorative.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/bosses/hans_grosse.dart';
|
||||
import 'package:wolf_3d_entities/src/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_entities/src/entity.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/collectible.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/decorations/dead_aardwolf.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/decorations/dead_guard.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/decorative.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/bosses/hans_grosse.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entities/enemies/enemy.dart';
|
||||
import 'package:wolf_3d_dart/src/entities/entity.dart';
|
||||
|
||||
typedef EntitySpawner =
|
||||
Entity? Function(
|
||||
@@ -1,5 +1,5 @@
|
||||
import 'package:wolf_3d_entities/wolf_3d_entities.dart';
|
||||
import 'package:wolf_3d_input/src/wolf_3d_input.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_entities.dart';
|
||||
import 'package:wolf_3d_dart/src/input/wolf_3d_input.dart';
|
||||
|
||||
class CliInput extends Wolf3dInput {
|
||||
// Pending buffer for asynchronous stdin events
|
||||
@@ -1,5 +1,5 @@
|
||||
import 'package:wolf_3d_engine/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_entities/wolf_3d_entities.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_entities.dart';
|
||||
|
||||
abstract class Wolf3dInput {
|
||||
bool isMovingForward = false;
|
||||
@@ -1,6 +1,6 @@
|
||||
import 'dart:typed_data';
|
||||
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
|
||||
import 'opl2_emulator.dart';
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import 'dart:typed_data';
|
||||
|
||||
import 'package:audioplayers/audioplayers.dart';
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_engine/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_synth/src/imf_renderer.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_dart/src/synth/imf_renderer.dart';
|
||||
|
||||
class WolfAudio implements EngineAudio {
|
||||
@override
|
||||
7
packages/wolf_3d_dart/lib/wolf_3d_data.dart
Normal file
7
packages/wolf_3d_dart/lib/wolf_3d_data.dart
Normal file
@@ -0,0 +1,7 @@
|
||||
/// Support for doing something awesome.
|
||||
///
|
||||
/// More dartdocs go here.
|
||||
library;
|
||||
|
||||
export 'src/data/wl_parser.dart' show WLParser;
|
||||
export 'src/data/wolfenstein_loader.dart' show WolfensteinLoader;
|
||||
22
packages/wolf_3d_dart/lib/wolf_3d_data_types.dart
Normal file
22
packages/wolf_3d_dart/lib/wolf_3d_data_types.dart
Normal file
@@ -0,0 +1,22 @@
|
||||
/// Support for doing something awesome.
|
||||
///
|
||||
/// More dartdocs go here.
|
||||
library;
|
||||
|
||||
export 'src/data_types/cardinal_direction.dart' show CardinalDirection;
|
||||
export 'src/data_types/color_palette.dart' show ColorPalette;
|
||||
export 'src/data_types/coordinate_2d.dart' show Coordinate2D;
|
||||
export 'src/data_types/difficulty.dart' show Difficulty;
|
||||
export 'src/data_types/enemy_map_data.dart' show EnemyMapData;
|
||||
export 'src/data_types/episode.dart' show Episode;
|
||||
export 'src/data_types/frame_buffer.dart' show FrameBuffer;
|
||||
export 'src/data_types/game_file.dart' show GameFile;
|
||||
export 'src/data_types/game_version.dart' show GameVersion;
|
||||
export 'src/data_types/image.dart' show VgaImage;
|
||||
export 'src/data_types/map_objects.dart' show MapObject;
|
||||
export 'src/data_types/sound.dart'
|
||||
show PcmSound, ImfMusic, ImfInstruction, WolfMusicMap, WolfSound;
|
||||
export 'src/data_types/sprite.dart' hide Matrix;
|
||||
export 'src/data_types/sprite_frame_range.dart' show SpriteFrameRange;
|
||||
export 'src/data_types/wolf_level.dart' show WolfLevel;
|
||||
export 'src/data_types/wolfenstein_data.dart' show WolfensteinData;
|
||||
15
packages/wolf_3d_dart/lib/wolf_3d_engine.dart
Normal file
15
packages/wolf_3d_dart/lib/wolf_3d_engine.dart
Normal file
@@ -0,0 +1,15 @@
|
||||
/// Support for doing something awesome.
|
||||
///
|
||||
/// More dartdocs go here.
|
||||
library;
|
||||
|
||||
export 'src/engine/audio/engine_audio.dart';
|
||||
export 'src/engine/audio/silent_renderer.dart';
|
||||
export 'src/engine/input/engine_input.dart';
|
||||
export 'src/engine/managers/door_manager.dart';
|
||||
export 'src/engine/managers/pushwall_manager.dart';
|
||||
export 'src/engine/player/player.dart';
|
||||
export 'src/engine/rasterizer/ascii_rasterizer.dart';
|
||||
export 'src/engine/rasterizer/rasterizer.dart';
|
||||
export 'src/engine/rasterizer/software_rasterizer.dart';
|
||||
export 'src/engine/wolf_3d_engine_base.dart';
|
||||
24
packages/wolf_3d_dart/lib/wolf_3d_entities.dart
Normal file
24
packages/wolf_3d_dart/lib/wolf_3d_entities.dart
Normal file
@@ -0,0 +1,24 @@
|
||||
/// Support for doing something awesome.
|
||||
///
|
||||
/// More dartdocs go here.
|
||||
library;
|
||||
|
||||
export 'src/entities/entities/collectible.dart';
|
||||
export 'src/entities/entities/decorative.dart';
|
||||
export 'src/entities/entities/door.dart';
|
||||
export 'src/entities/entities/enemies/bosses/hans_grosse.dart';
|
||||
export 'src/entities/entities/enemies/dog.dart';
|
||||
export 'src/entities/entities/enemies/enemy.dart';
|
||||
export 'src/entities/entities/enemies/enemy_animation.dart';
|
||||
export 'src/entities/entities/enemies/enemy_type.dart';
|
||||
export 'src/entities/entities/enemies/guard.dart';
|
||||
export 'src/entities/entities/enemies/mutant.dart';
|
||||
export 'src/entities/entities/enemies/officer.dart';
|
||||
export 'src/entities/entities/enemies/ss.dart';
|
||||
export 'src/entities/entities/weapon/weapon.dart';
|
||||
export 'src/entities/entities/weapon/weapons/chain_gun.dart';
|
||||
export 'src/entities/entities/weapon/weapons/knife.dart';
|
||||
export 'src/entities/entities/weapon/weapons/machine_gun.dart';
|
||||
export 'src/entities/entities/weapon/weapons/pistol.dart';
|
||||
export 'src/entities/entity.dart';
|
||||
export 'src/entities/entity_registry.dart';
|
||||
4
packages/wolf_3d_dart/lib/wolf_3d_input.dart
Normal file
4
packages/wolf_3d_dart/lib/wolf_3d_input.dart
Normal file
@@ -0,0 +1,4 @@
|
||||
library;
|
||||
|
||||
export 'src/input/cli_input.dart';
|
||||
export 'src/input/wolf_3d_input.dart';
|
||||
@@ -3,4 +3,4 @@
|
||||
/// More dartdocs go here.
|
||||
library;
|
||||
|
||||
export 'src/wolf_3d_audio.dart' show WolfAudio;
|
||||
export 'src/synth/wolf_3d_audio.dart' show WolfAudio;
|
||||
16
packages/wolf_3d_dart/pubspec.yaml
Normal file
16
packages/wolf_3d_dart/pubspec.yaml
Normal file
@@ -0,0 +1,16 @@
|
||||
name: wolf_3d_dart
|
||||
description: A combined package for all non-Flutter components of wolf 3D
|
||||
version: 0.0.1
|
||||
resolution: workspace
|
||||
|
||||
environment:
|
||||
sdk: ^3.11.1
|
||||
|
||||
dependencies:
|
||||
arcane_helper_utils: ^1.4.7
|
||||
audioplayers: ^6.6.0
|
||||
crypto: ^3.0.7
|
||||
|
||||
dev_dependencies:
|
||||
lints: ^6.0.0
|
||||
test: ^1.24.0
|
||||
7
packages/wolf_3d_data/.gitignore
vendored
7
packages/wolf_3d_data/.gitignore
vendored
@@ -1,7 +0,0 @@
|
||||
# https://dart.dev/guides/libraries/private-files
|
||||
# Created by `dart pub`
|
||||
.dart_tool/
|
||||
|
||||
# Avoid committing pubspec.lock for library packages; see
|
||||
# https://dart.dev/guides/libraries/private-files#pubspeclock.
|
||||
pubspec.lock
|
||||
@@ -1,3 +0,0 @@
|
||||
## 1.0.0
|
||||
|
||||
- Initial version.
|
||||
@@ -1,39 +0,0 @@
|
||||
<!--
|
||||
This README describes the package. If you publish this package to pub.dev,
|
||||
this README's contents appear on the landing page for your package.
|
||||
|
||||
For information about how to write a good package README, see the guide for
|
||||
[writing package pages](https://dart.dev/tools/pub/writing-package-pages).
|
||||
|
||||
For general information about developing packages, see the Dart guide for
|
||||
[creating packages](https://dart.dev/guides/libraries/create-packages)
|
||||
and the Flutter guide for
|
||||
[developing packages and plugins](https://flutter.dev/to/develop-packages).
|
||||
-->
|
||||
|
||||
TODO: Put a short description of the package here that helps potential users
|
||||
know whether this package might be useful for them.
|
||||
|
||||
## Features
|
||||
|
||||
TODO: List what your package can do. Maybe include images, gifs, or videos.
|
||||
|
||||
## Getting started
|
||||
|
||||
TODO: List prerequisites and provide or point to information on how to
|
||||
start using the package.
|
||||
|
||||
## Usage
|
||||
|
||||
TODO: Include short and useful examples for package users. Add longer examples
|
||||
to `/example` folder.
|
||||
|
||||
```dart
|
||||
const like = 'sample';
|
||||
```
|
||||
|
||||
## Additional information
|
||||
|
||||
TODO: Tell users more about the package: where to find more information, how to
|
||||
contribute to the package, how to file issues, what response they can expect
|
||||
from the package authors, and more.
|
||||
@@ -1,4 +0,0 @@
|
||||
include: package:flutter_lints/flutter.yaml
|
||||
|
||||
formatter:
|
||||
trailing_commas: preserve
|
||||
@@ -1,7 +0,0 @@
|
||||
/// Support for doing something awesome.
|
||||
///
|
||||
/// More dartdocs go here.
|
||||
library;
|
||||
|
||||
export 'src/wl_parser.dart' show WLParser;
|
||||
export 'src/wolfenstein_loader.dart' show WolfensteinLoader;
|
||||
@@ -1,20 +0,0 @@
|
||||
name: wolf_3d_data
|
||||
description: A starting point for Dart libraries or applications.
|
||||
version: 1.0.0
|
||||
# repository: https://github.com/my_org/my_repo
|
||||
|
||||
environment:
|
||||
sdk: ^3.11.1
|
||||
|
||||
resolution: workspace
|
||||
|
||||
publish_to: none
|
||||
|
||||
dependencies:
|
||||
crypto: ^3.0.7
|
||||
wolf_3d_data_types:
|
||||
wolf_3d_entities:
|
||||
|
||||
dev_dependencies:
|
||||
lints: ^6.0.0
|
||||
test: ^1.25.6
|
||||
7
packages/wolf_3d_data_types/.gitignore
vendored
7
packages/wolf_3d_data_types/.gitignore
vendored
@@ -1,7 +0,0 @@
|
||||
# https://dart.dev/guides/libraries/private-files
|
||||
# Created by `dart pub`
|
||||
.dart_tool/
|
||||
|
||||
# Avoid committing pubspec.lock for library packages; see
|
||||
# https://dart.dev/guides/libraries/private-files#pubspeclock.
|
||||
pubspec.lock
|
||||
@@ -1,3 +0,0 @@
|
||||
## 1.0.0
|
||||
|
||||
- Initial version.
|
||||
@@ -1,39 +0,0 @@
|
||||
<!--
|
||||
This README describes the package. If you publish this package to pub.dev,
|
||||
this README's contents appear on the landing page for your package.
|
||||
|
||||
For information about how to write a good package README, see the guide for
|
||||
[writing package pages](https://dart.dev/tools/pub/writing-package-pages).
|
||||
|
||||
For general information about developing packages, see the Dart guide for
|
||||
[creating packages](https://dart.dev/guides/libraries/create-packages)
|
||||
and the Flutter guide for
|
||||
[developing packages and plugins](https://flutter.dev/to/develop-packages).
|
||||
-->
|
||||
|
||||
TODO: Put a short description of the package here that helps potential users
|
||||
know whether this package might be useful for them.
|
||||
|
||||
## Features
|
||||
|
||||
TODO: List what your package can do. Maybe include images, gifs, or videos.
|
||||
|
||||
## Getting started
|
||||
|
||||
TODO: List prerequisites and provide or point to information on how to
|
||||
start using the package.
|
||||
|
||||
## Usage
|
||||
|
||||
TODO: Include short and useful examples for package users. Add longer examples
|
||||
to `/example` folder.
|
||||
|
||||
```dart
|
||||
const like = 'sample';
|
||||
```
|
||||
|
||||
## Additional information
|
||||
|
||||
TODO: Tell users more about the package: where to find more information, how to
|
||||
contribute to the package, how to file issues, what response they can expect
|
||||
from the package authors, and more.
|
||||
@@ -1,30 +0,0 @@
|
||||
# This file configures the static analysis results for your project (errors,
|
||||
# warnings, and lints).
|
||||
#
|
||||
# This enables the 'recommended' set of lints from `package:lints`.
|
||||
# This set helps identify many issues that may lead to problems when running
|
||||
# or consuming Dart code, and enforces writing Dart using a single, idiomatic
|
||||
# style and format.
|
||||
#
|
||||
# If you want a smaller set of lints you can change this to specify
|
||||
# 'package:lints/core.yaml'. These are just the most critical lints
|
||||
# (the recommended set includes the core lints).
|
||||
# The core lints are also what is used by pub.dev for scoring packages.
|
||||
|
||||
include: package:lints/recommended.yaml
|
||||
|
||||
# Uncomment the following section to specify additional rules.
|
||||
|
||||
# linter:
|
||||
# rules:
|
||||
# - camel_case_types
|
||||
|
||||
# analyzer:
|
||||
# exclude:
|
||||
# - path/to/excluded/files/**
|
||||
|
||||
# For more information about the core and recommended set of lints, see
|
||||
# https://dart.dev/go/core-lints
|
||||
|
||||
# For additional information about configuring this file, see
|
||||
# https://dart.dev/guides/language/analysis-options
|
||||
@@ -1,22 +0,0 @@
|
||||
/// Support for doing something awesome.
|
||||
///
|
||||
/// More dartdocs go here.
|
||||
library;
|
||||
|
||||
export 'src/cardinal_direction.dart' show CardinalDirection;
|
||||
export 'src/color_palette.dart' show ColorPalette;
|
||||
export 'src/coordinate_2d.dart' show Coordinate2D;
|
||||
export 'src/difficulty.dart' show Difficulty;
|
||||
export 'src/enemy_map_data.dart' show EnemyMapData;
|
||||
export 'src/episode.dart' show Episode;
|
||||
export 'src/frame_buffer.dart' show FrameBuffer;
|
||||
export 'src/game_file.dart' show GameFile;
|
||||
export 'src/game_version.dart' show GameVersion;
|
||||
export 'src/image.dart' show VgaImage;
|
||||
export 'src/map_objects.dart' show MapObject;
|
||||
export 'src/sound.dart'
|
||||
show PcmSound, ImfMusic, ImfInstruction, WolfMusicMap, WolfSound;
|
||||
export 'src/sprite.dart' hide Matrix;
|
||||
export 'src/sprite_frame_range.dart' show SpriteFrameRange;
|
||||
export 'src/wolf_level.dart' show WolfLevel;
|
||||
export 'src/wolfenstein_data.dart' show WolfensteinData;
|
||||
@@ -1,16 +0,0 @@
|
||||
name: wolf_3d_data_types
|
||||
description: A starting point for Dart libraries or applications.
|
||||
version: 1.0.0
|
||||
# repository: https://github.com/my_org/my_repo
|
||||
|
||||
environment:
|
||||
sdk: ^3.11.1
|
||||
|
||||
resolution: workspace
|
||||
|
||||
dependencies:
|
||||
wolf_3d_entities: any
|
||||
|
||||
dev_dependencies:
|
||||
lints: ^6.0.0
|
||||
test: ^1.25.6
|
||||
7
packages/wolf_3d_engine/.gitignore
vendored
7
packages/wolf_3d_engine/.gitignore
vendored
@@ -1,7 +0,0 @@
|
||||
# https://dart.dev/guides/libraries/private-files
|
||||
# Created by `dart pub`
|
||||
.dart_tool/
|
||||
|
||||
# Avoid committing pubspec.lock for library packages; see
|
||||
# https://dart.dev/guides/libraries/private-files#pubspeclock.
|
||||
pubspec.lock
|
||||
@@ -1,3 +0,0 @@
|
||||
## 1.0.0
|
||||
|
||||
- Initial version.
|
||||
@@ -1,39 +0,0 @@
|
||||
<!--
|
||||
This README describes the package. If you publish this package to pub.dev,
|
||||
this README's contents appear on the landing page for your package.
|
||||
|
||||
For information about how to write a good package README, see the guide for
|
||||
[writing package pages](https://dart.dev/tools/pub/writing-package-pages).
|
||||
|
||||
For general information about developing packages, see the Dart guide for
|
||||
[creating packages](https://dart.dev/guides/libraries/create-packages)
|
||||
and the Flutter guide for
|
||||
[developing packages and plugins](https://flutter.dev/to/develop-packages).
|
||||
-->
|
||||
|
||||
TODO: Put a short description of the package here that helps potential users
|
||||
know whether this package might be useful for them.
|
||||
|
||||
## Features
|
||||
|
||||
TODO: List what your package can do. Maybe include images, gifs, or videos.
|
||||
|
||||
## Getting started
|
||||
|
||||
TODO: List prerequisites and provide or point to information on how to
|
||||
start using the package.
|
||||
|
||||
## Usage
|
||||
|
||||
TODO: Include short and useful examples for package users. Add longer examples
|
||||
to `/example` folder.
|
||||
|
||||
```dart
|
||||
const like = 'sample';
|
||||
```
|
||||
|
||||
## Additional information
|
||||
|
||||
TODO: Tell users more about the package: where to find more information, how to
|
||||
contribute to the package, how to file issues, what response they can expect
|
||||
from the package authors, and more.
|
||||
@@ -1,30 +0,0 @@
|
||||
# This file configures the static analysis results for your project (errors,
|
||||
# warnings, and lints).
|
||||
#
|
||||
# This enables the 'recommended' set of lints from `package:lints`.
|
||||
# This set helps identify many issues that may lead to problems when running
|
||||
# or consuming Dart code, and enforces writing Dart using a single, idiomatic
|
||||
# style and format.
|
||||
#
|
||||
# If you want a smaller set of lints you can change this to specify
|
||||
# 'package:lints/core.yaml'. These are just the most critical lints
|
||||
# (the recommended set includes the core lints).
|
||||
# The core lints are also what is used by pub.dev for scoring packages.
|
||||
|
||||
include: package:lints/recommended.yaml
|
||||
|
||||
# Uncomment the following section to specify additional rules.
|
||||
|
||||
# linter:
|
||||
# rules:
|
||||
# - camel_case_types
|
||||
|
||||
# analyzer:
|
||||
# exclude:
|
||||
# - path/to/excluded/files/**
|
||||
|
||||
# For more information about the core and recommended set of lints, see
|
||||
# https://dart.dev/go/core-lints
|
||||
|
||||
# For additional information about configuring this file, see
|
||||
# https://dart.dev/guides/language/analysis-options
|
||||
@@ -1,15 +0,0 @@
|
||||
/// Support for doing something awesome.
|
||||
///
|
||||
/// More dartdocs go here.
|
||||
library;
|
||||
|
||||
export 'src/audio/engine_audio.dart';
|
||||
export 'src/audio/silent_renderer.dart';
|
||||
export 'src/input/engine_input.dart';
|
||||
export 'src/managers/door_manager.dart';
|
||||
export 'src/managers/pushwall_manager.dart';
|
||||
export 'src/player/player.dart';
|
||||
export 'src/rasterizer/ascii_rasterizer.dart';
|
||||
export 'src/rasterizer/rasterizer.dart';
|
||||
export 'src/rasterizer/software_rasterizer.dart';
|
||||
export 'src/wolf_3d_engine_base.dart';
|
||||
@@ -1,20 +0,0 @@
|
||||
name: wolf_3d_engine
|
||||
description: A starting point for Dart libraries or applications.
|
||||
version: 1.0.0
|
||||
# repository: https://github.com/my_org/my_repo
|
||||
|
||||
environment:
|
||||
sdk: ^3.11.1
|
||||
|
||||
resolution: workspace
|
||||
|
||||
dependencies:
|
||||
wolf_3d_data_types: any
|
||||
wolf_3d_entities: any
|
||||
wolf_3d_data: any
|
||||
wolf_3d_input: any
|
||||
arcane_helper_utils: ^1.4.7
|
||||
|
||||
dev_dependencies:
|
||||
lints: ^6.0.0
|
||||
test: ^1.25.6
|
||||
7
packages/wolf_3d_entities/.gitignore
vendored
7
packages/wolf_3d_entities/.gitignore
vendored
@@ -1,7 +0,0 @@
|
||||
# https://dart.dev/guides/libraries/private-files
|
||||
# Created by `dart pub`
|
||||
.dart_tool/
|
||||
|
||||
# Avoid committing pubspec.lock for library packages; see
|
||||
# https://dart.dev/guides/libraries/private-files#pubspeclock.
|
||||
pubspec.lock
|
||||
@@ -1,3 +0,0 @@
|
||||
## 1.0.0
|
||||
|
||||
- Initial version.
|
||||
@@ -1,39 +0,0 @@
|
||||
<!--
|
||||
This README describes the package. If you publish this package to pub.dev,
|
||||
this README's contents appear on the landing page for your package.
|
||||
|
||||
For information about how to write a good package README, see the guide for
|
||||
[writing package pages](https://dart.dev/tools/pub/writing-package-pages).
|
||||
|
||||
For general information about developing packages, see the Dart guide for
|
||||
[creating packages](https://dart.dev/guides/libraries/create-packages)
|
||||
and the Flutter guide for
|
||||
[developing packages and plugins](https://flutter.dev/to/develop-packages).
|
||||
-->
|
||||
|
||||
TODO: Put a short description of the package here that helps potential users
|
||||
know whether this package might be useful for them.
|
||||
|
||||
## Features
|
||||
|
||||
TODO: List what your package can do. Maybe include images, gifs, or videos.
|
||||
|
||||
## Getting started
|
||||
|
||||
TODO: List prerequisites and provide or point to information on how to
|
||||
start using the package.
|
||||
|
||||
## Usage
|
||||
|
||||
TODO: Include short and useful examples for package users. Add longer examples
|
||||
to `/example` folder.
|
||||
|
||||
```dart
|
||||
const like = 'sample';
|
||||
```
|
||||
|
||||
## Additional information
|
||||
|
||||
TODO: Tell users more about the package: where to find more information, how to
|
||||
contribute to the package, how to file issues, what response they can expect
|
||||
from the package authors, and more.
|
||||
@@ -1,4 +0,0 @@
|
||||
include: package:flutter_lints/flutter.yaml
|
||||
|
||||
formatter:
|
||||
trailing_commas: preserve
|
||||
@@ -1,24 +0,0 @@
|
||||
/// Support for doing something awesome.
|
||||
///
|
||||
/// More dartdocs go here.
|
||||
library;
|
||||
|
||||
export 'src/entities/collectible.dart';
|
||||
export 'src/entities/decorative.dart';
|
||||
export 'src/entities/door.dart';
|
||||
export 'src/entities/enemies/bosses/hans_grosse.dart';
|
||||
export 'src/entities/enemies/dog.dart';
|
||||
export 'src/entities/enemies/enemy.dart';
|
||||
export 'src/entities/enemies/enemy_animation.dart';
|
||||
export 'src/entities/enemies/enemy_type.dart';
|
||||
export 'src/entities/enemies/guard.dart';
|
||||
export 'src/entities/enemies/mutant.dart';
|
||||
export 'src/entities/enemies/officer.dart';
|
||||
export 'src/entities/enemies/ss.dart';
|
||||
export 'src/entities/weapon/weapon.dart';
|
||||
export 'src/entities/weapon/weapons/chain_gun.dart';
|
||||
export 'src/entities/weapon/weapons/knife.dart';
|
||||
export 'src/entities/weapon/weapons/machine_gun.dart';
|
||||
export 'src/entities/weapon/weapons/pistol.dart';
|
||||
export 'src/entity.dart';
|
||||
export 'src/entity_registry.dart';
|
||||
@@ -1,16 +0,0 @@
|
||||
name: wolf_3d_entities
|
||||
description: A starting point for Dart libraries or applications.
|
||||
version: 1.0.0
|
||||
# repository: https://github.com/my_org/my_repo
|
||||
|
||||
environment:
|
||||
sdk: ^3.11.1
|
||||
|
||||
resolution: workspace
|
||||
|
||||
dependencies:
|
||||
wolf_3d_data_types: any
|
||||
|
||||
dev_dependencies:
|
||||
lints: ^6.0.0
|
||||
test: ^1.25.6
|
||||
@@ -1,5 +1,5 @@
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_engine/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_flutter/wolf_3d.dart';
|
||||
|
||||
class FlutterAudioAdapter implements EngineAudio {
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:wolf_3d_data/wolf_3d_data.dart';
|
||||
import 'package:wolf_3d_data_types/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_engine/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_synth/wolf_3d_synth.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_engine.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_synth.dart';
|
||||
|
||||
class Wolf3d {
|
||||
Wolf3d._();
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user