载入中...
搜索中...
未找到
Crafting.h
浏览该文件的文档.
1#pragma once
2
9#include "common/Time.h"
14
15#include <string>
16#include <cstdint>
17#include <vector>
18
19#include "common/Export.h"
20
21namespace eve::inventory {
22class Bag;
23}
24
25namespace eve::rpg {
26
29 std::string id;
30 std::string process = "craft";
33 std::vector<inventory::InventoryItemGrant> outputs;
35};
36
47
53
61public:
64
73 [[nodiscard]] static eve::Result<int> settle(production::WorkQueue& queue, inventory::Bag& output,
74 std::string_view taskId);
75};
76
77} // namespace eve::rpg
std::string output
Common identity and hot-reload contract for typed runtime instances.
#define EVENGINE_API_PLATFORM
Definition Export.h:107
const GltfImportRequest & request
float begin
std::string taskId
Strongly typed, transaction-friendly resource cost protocol.
Common time values and an injectable deterministic simulation clock.
Signed, fixed-resolution simulation duration in nanoseconds.
Definition Time.h:43
static constexpr Duration zero() noexcept
Return zero duration.
Definition Time.h:60
Move-only operation result carrying either a value or Status.
Definition Result.h:155
格子型物品容器(脚本可直接操作)。
Definition Bag.h:21
Generic multi-owner, multi-slot continuous-progress work queue.
Definition Production.h:200
Immutable canonical multi-resource cost.
Provider-neutral resource account contract.
Composes RPG recipes with existing production and inventory owners.
Definition Crafting.h:60
运行时容器:固定格数的背包 / 箱子 / 商店栏等。 行为由 InventorySystem 提供;本类暴露便于脚本绑定的薄封装方法。
RPG 模块的基础实体:把属性 / 状态 / 技能三张表挂到一个 ECS 实体上。
A generation-qualified reference to one definition incarnation.
Receipt for an accepted recipe job.
Definition Crafting.h:49
transaction::TransactionReceipt transaction
Definition Crafting.h:50
std::string productionTaskId
Definition Crafting.h:51
Validated recipe projection used by crafting, alchemy, brewing and cooking.
Definition Crafting.h:28
eve::definition::DefinitionHandle definition
Definition Crafting.h:31
eve::resource::CostSpec ingredients
Definition Crafting.h:32
std::vector< inventory::InventoryItemGrant > outputs
Definition Crafting.h:33
eve::Duration duration
Definition Crafting.h:34
Borrowed inputs for atomically paying ingredients and enqueuing recipe work.
Definition Crafting.h:38
production::WorkQueue * production
Definition Crafting.h:39
std::uint32_t batchSize
Definition Crafting.h:44
resource::IResourceAccount * ingredients
Definition Crafting.h:40
CraftingRecipe recipe
Definition Crafting.h:42
std::string transactionId
Definition Crafting.h:45
Observable summary returned after an atomic participant commit.
Definition Transaction.h:97