Torch
Loading...
Searching...
No Matches
QuizQuestionFactory.h
1
#pragma once
2
3
#include "DialogFactory.h"
4
#include <factories/BaseFactory.h>
5
6
namespace
BK64 {
7
8
class
QuizQuestionData :
public
IParsedData
{
9
public
:
10
std::vector<DialogString> mText;
11
std::vector<DialogString> mOptions;
12
13
QuizQuestionData(std::vector<DialogString> text, std::vector<DialogString> options)
14
: mText(std::move(text)), mOptions(std::move(options)) {
15
}
16
};
17
18
class
QuizQuestionHeaderExporter
:
public
BaseExporter
{
19
ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName,
20
YAML::Node& node, std::string* replacement)
override
;
21
};
22
23
class
QuizQuestionBinaryExporter
:
public
BaseExporter
{
24
ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName,
25
YAML::Node& node, std::string* replacement)
override
;
26
};
27
28
class
QuizQuestionCodeExporter
:
public
BaseExporter
{
29
ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName,
30
YAML::Node& node, std::string* replacement)
override
;
31
};
32
33
class
QuizQuestionModdingExporter
:
public
BaseExporter
{
34
ExportResult Export(std::ostream& write, std::shared_ptr<IParsedData> data, std::string& entryName,
35
YAML::Node& node, std::string* replacement)
override
;
36
};
37
38
class
QuizQuestionFactory
:
public
BaseFactory
{
39
public
:
40
std::optional<std::shared_ptr<IParsedData>> parse(std::vector<uint8_t>& buffer, YAML::Node& data)
override
;
41
std::optional<std::shared_ptr<IParsedData>> parse_modding(std::vector<uint8_t>& buffer, YAML::Node& data)
override
;
42
inline
std::unordered_map<ExportType, std::shared_ptr<BaseExporter>> GetExporters()
override
{
43
return
{ REGISTER(Code,
QuizQuestionCodeExporter
) REGISTER(Header,
QuizQuestionHeaderExporter
)
44
REGISTER(Binary,
QuizQuestionBinaryExporter
) REGISTER(Modding,
QuizQuestionModdingExporter
) };
45
}
46
bool
SupportModdedAssets()
override
{
47
return
true
;
48
}
49
};
50
}
// namespace BK64
BK64::QuizQuestionBinaryExporter
Definition
QuizQuestionFactory.h:23
BK64::QuizQuestionCodeExporter
Definition
QuizQuestionFactory.h:28
BK64::QuizQuestionFactory
Definition
QuizQuestionFactory.h:38
BK64::QuizQuestionHeaderExporter
Definition
QuizQuestionFactory.h:18
BK64::QuizQuestionModdingExporter
Definition
QuizQuestionFactory.h:33
BaseExporter
Definition
BaseFactory.h:96
BaseFactory
Definition
BaseFactory.h:102
IParsedData
Definition
BaseFactory.h:88
src
factories
bk64
QuizQuestionFactory.h
Generated by
1.14.0