warcrafty 1.0.0 copy "warcrafty: ^1.0.0" to clipboard
warcrafty: ^1.0.0 copied to clipboard

A high-performance Dart library for reading and writing World of Warcraft DBC files.

example/warcrafty_example.dart

/// DBC 文件读写示例
///
/// 演示如何使用 warcrafty 库读取和写入 DBC 文件。
library;

import 'package:warcrafty/warcrafty.dart';

void main() async {
  // 示例 1: 使用预定义的格式
  print('=== 示例 1: 使用预定义格式 ===');
  print('Achievement 格式: ${Definitions.achievement.format}');
  print('ChrRaces 结构: ${Definitions.chrRaces.name}');
  print('Spell 字段数: ${Definitions.spell.fieldCount}');

  // 示例 2: 使用 DbcLoader 读取文件
  print('\n=== 示例 2: 读取 DBC 文件 ===');
  // 注意: 需要实际的 DBC 文件路径
  // final loader = DbcLoader.loadFromPath('path/to/ChrRaces.dbc', Definitions.chrRaces.format);
  // for (final record in loader.records) {
  //   print('ID: ${record.getInt(0)}, Name: ${record.getString(5)}');
  // }
  print('(需要实际的 DBC 文件才能演示读取)');

  // 示例 3: 使用 DbcWriter 写入文件
  print('\n=== 示例 3: 写入 DBC 文件 ===');
  // final records = [
  //   [1, 0, 84, 0, 0, 'Human', '人类'],
  // ];
  // await DbcWriter.writeToPath('output.dbc', Definitions.chrRaces.format, records);
  print('(需要实际的 DBC 文件路径才能演示写入)');

  // 示例 4: 使用索引
  print('\n=== 示例 4: 使用索引 ===');
  // final indexBuilder = DbcIndexBuilder.fromLoader(loader, (r) => r.toMap());
  // final race = indexBuilder.lookup(1);
  print('(需要实际的 DBC 文件才能演示索引)');
}
1
likes
150
points
20
downloads

Publisher

verified publisherfoxwow.xyz

Weekly Downloads

A high-performance Dart library for reading and writing World of Warcraft DBC files.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

More

Packages that depend on warcrafty