LeviLamina
Loading...
Searching...
No Matches
GeneticsComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7class Actor;
8class CompoundTag;
11class Random;
12struct GeneDefinition;
13// clang-format on
14
15class GeneticsComponent {
16public:
17 // GeneticsComponent inner types declare
18 // clang-format off
19 struct Gene;
20 // clang-format on
21
22 // GeneticsComponent inner types define
23 struct Gene {
24 public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<4, 4, int> mainAllele;
28 ::ll::TypedStorage<4, 4, int> hiddenAllele;
29 // NOLINTEND
30 };
31
32public:
33 // member variables
34 // NOLINTBEGIN
35 ::ll::TypedStorage<8, 24, ::std::vector<::GeneticsComponent::Gene>> mGenes;
36 ::ll::TypedStorage<8, 8, ::GeneticsDefinition const*> mGeneticsDescription;
37 ::ll::TypedStorage<8, 8, ::Random*> mRandom;
38 // NOLINTEND
39
40public:
41 // member functions
42 // NOLINTBEGIN
43 MCAPI GeneticsComponent();
44
45 MCAPI ::GeneticsComponent::Gene _crossParentGenes(
46 ::GeneDefinition const& definition,
49 );
50
51 MCAPI void addAdditionalSaveData(::CompoundTag& tag) const;
52
53 MCAPI void buildDebugInfo(::std::string& out) const;
54
55 MCAPI void fireGeneEvents(::Actor& owner) const;
56
57 MCAPI void initializeGenesFromParents(::Actor& owner, ::Actor& parentalUnit1, ::Actor& parentalUnit2);
58
59 MCAPI void readAdditionalSaveData(::Actor& owner, ::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
60 // NOLINTEND
61
62public:
63 // static variables
64 // NOLINTBEGIN
65 MCAPI static ::std::string const& GENE_ARRAY();
66
67 MCAPI static ::std::string const& HIDDEN_ALLELE();
68
69 MCAPI static ::std::string const& MAIN_ALLELE();
70 // NOLINTEND
71
72public:
73 // constructor thunks
74 // NOLINTBEGIN
75 MCFOLD void* $ctor();
76 // NOLINTEND
77};
Definition Actor.h:125
Definition CompoundTag.h:23
Definition DataLoadHelper.h:20
Definition GeneticsDefinition.h:16
Definition Random.h:10
Definition GeneDefinition.h:13
Definition GeneticsComponent.h:23