Flutter天赋计算器插件wow_talent_calculator的使用

Flutter天赋计算器插件wow_talent_calculator的使用

WoW Talent Calculator(魔兽世界天赋计算器)

这是一个用于处理魔兽世界天赋计算器逻辑和状态的dart包。

特性

  • 支持经典版、燃烧的远征和巫妖王之怒扩展。
  • 投入天赋点。
  • 移除天赋点。
  • 重置一个专精。
  • 重置所有专精。
  • 设置专精状态(例如:加载保存的状态)。
  • 打印专精到控制台。
  • 天赋序列在后台保持保存。
  • 打印所有专精到控制台。
  • 打印天赋序列到控制台。

使用方法

要使用wow_talent_calculator插件,将其作为依赖项添加到pubspec.yaml文件中。

dependencies:
  wow_talent_calculator: ^x.x.x

然后运行flutter pub get命令来获取该包。

示例

以下是一个简单的示例,展示了如何使用wow_talent_calculator插件。

import 'package:wow_talent_calculator/wow_talent_calculator.dart';

void main() {
  // 初始化天赋计算器,设置扩展为经典版,职业为战士
  var wtc = WowTalentCalculator(expansionId: 0, charClassId: 8);

  // 按顺序投资天赋点
  for (int i = 0; i < 2; i++) {
    wtc.investPointAt(0, 0); // 第一个专精的第一个天赋
  }

  for (int i = 0; i < 3; i++) {
    wtc.investPointAt(0, 2); // 第一个专精的第三个天赋
  }

  for (int i = 0; i < 5; i++) {
    wtc.investPointAt(0, 5); // 第一个专精的第五个天赋
  }

  wtc.investPointAt(0, 8); // 第一个专精的第八个天赋
  wtc.investPointAt(0, 9); // 第一个专精的第九个天赋

  for (int i = 0; i < 3; i++) {
    wtc.investPointAt(0, 10); // 第一个专精的第十个天赋
  }

  for (int i = 0; i < 2; i++) {
    wtc.investPointAt(0, 14); // 第一个专精的第十四个天赋
  }

  // 第二个专精的投资
  for (int i = 0; i < 5; i++) {
    wtc.investPointAt(1, 2); // 第二个专精的第二个天赋
  }

  for (int i = 0; i < 5; i++) {
    wtc.investPointAt(1, 6); // 第二个专精的第六个天赋
  }

  for (int i = 0; i < 5; i++) {
    wtc.investPointAt(1, 11); // 第二个专精的第十一个天赋
  }

  for (int i = 0; i < 5; i++) {
    wtc.investPointAt(1, 12); // 第二个专精的第十二个天赋
  }

  for (int i = 0; i < 2; i++) {
    wtc.investPointAt(1, 13); // 第二个专精的第十三个天赋
  }

  for (int i = 0; i < 5; i++) {
    wtc.investPointAt(1, 14); // 第二个专精的第十四个天赋
  }

  wtc.investPointAt(1, 17); // 第二个专精的第十七个天赋

  for (int i = 0; i < 5; i++) {
    wtc.investPointAt(1, 22); // 第二个专精的第二十二个天赋
  }

  wtc.investPointAt(1, 25); // 第二个专精的第二十五个天赋

  // 打印专精和天赋序列
  wtc.printAllSpecs(); // 打印所有专精
  wtc.printBuildSequence(); // 打印天赋序列
}

控制台输出

__________________________________________
| 2  0  3    ||    0  5    ||    0  0    |
|       |    ||            ||    |       |
| 0  5  |  0 ||    0  5    || 0  |  0  0 |
|    |  |    ||            || |  |       |
| 1  1  3    || 0  0  0  5 || 0  0  0  0 |
|       |    ||            ||            |
|    0  2    || 5  2  5    || 0  0  0    |
|            ||       |    ||            |
| 0  0  0  0 || 0  1  |  0 || 0  0  0    |
|    |       ||    |  |    ||    |       |
| 0  |  0    || 0  |  5    ||    |  0    |
|    |       ||    |       ||    |       |
|    0       ||    1       ||    0       |
__________________________________________

额外信息

扩展

enum Expansions {
  vanilla,
  tbc,
  wotlk,
}

职业

enum CharClasses {
  druid,
  hunter,
  mage,
  paladin,
  priest,
  roque,
  shaman,
  warlock,
  warrior,
  dk,
}

初始化

默认情况下,天赋计算器在未提供参数时初始化为expansionId: 0charClassId: 0

var wtc = WowTalentCalculator(expansionId: 0, charClassId: 0);
// 等同于
var wtcSame = WowTalentCalculator();

更多关于Flutter天赋计算器插件wow_talent_calculator的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter天赋计算器插件wow_talent_calculator的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


wow_talent_calculator 是一个用于在 Flutter 应用中实现《魔兽世界》天赋计算器的插件。它允许用户在应用中选择和查看不同职业的天赋树。以下是如何使用 wow_talent_calculator 插件的基本步骤:

1. 添加依赖

首先,你需要在 pubspec.yaml 文件中添加 wow_talent_calculator 插件的依赖:

dependencies:
  flutter:
    sdk: flutter
  wow_talent_calculator: ^1.0.0  # 请使用最新版本

然后运行 flutter pub get 来获取依赖。

2. 导入插件

在你的 Dart 文件中导入插件:

import 'package:wow_talent_calculator/wow_talent_calculator.dart';

3. 使用 WowTalentCalculator 组件

WowTalentCalculator 是一个可以直接使用的 Flutter 组件。你可以在你的应用中的任何地方使用它。

class TalentCalculatorPage extends StatelessWidget {
  [@override](/user/override)
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('魔兽世界天赋计算器'),
      ),
      body: WowTalentCalculator(
        classId: 1, // 职业ID,例如:1 代表战士
        onTalentChange: (talentPoints) {
          // 当天赋点发生变化时的回调
          print('当前天赋点: $talentPoints');
        },
      ),
    );
  }
}

4. 配置职业ID

classId 参数用于指定你想要显示的职业天赋树。以下是一些常见的职业ID:

  • 1: 战士
  • 2: 圣骑士
  • 3: 猎人
  • 4: 盗贼
  • 5: 牧师
  • 6: 死亡骑士
  • 7: 萨满祭司
  • 8: 法师
  • 9: 术士
  • 10: 武僧
  • 11: 德鲁伊
  • 12: 恶魔猎手

你可以根据用户的选择动态更改 classId 来显示不同职业的天赋树。

5. 处理天赋点变化

onTalentChange 回调函数会在用户更改天赋点时触发。你可以在这个回调中获取当前的天赋点分配情况,并将其保存或显示给用户。

6. 自定义样式

如果你需要自定义天赋计算器的样式,可以查看插件的文档或源码,了解如何调整外观和布局。

7. 运行应用

完成上述步骤后,你可以运行你的 Flutter 应用,并查看 WowTalentCalculator 组件的效果。

示例代码

以下是一个完整的示例代码:

import 'package:flutter/material.dart';
import 'package:wow_talent_calculator/wow_talent_calculator.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  [@override](/user/override)
  Widget build(BuildContext context) {
    return MaterialApp(
      title: '魔兽世界天赋计算器',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: TalentCalculatorPage(),
    );
  }
}

class TalentCalculatorPage extends StatelessWidget {
  [@override](/user/override)
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('魔兽世界天赋计算器'),
      ),
      body: WowTalentCalculator(
        classId: 1, // 职业ID,例如:1 代表战士
        onTalentChange: (talentPoints) {
          // 当天赋点发生变化时的回调
          print('当前天赋点: $talentPoints');
        },
      ),
    );
  }
}
回到顶部