LeviLamina
Loading...
Searching...
No Matches
Squid.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Color.h"
7#include "mc/deps/shared_types/legacy/LevelSoundEvent.h"
8#include "mc/world/actor/ActorEvent.h"
9#include "mc/world/actor/ActorInitializationMethod.h"
10#include "mc/world/actor/Mob.h"
11
12// auto generated forward declare list
13// clang-format off
16class ActorHurtResult;
17class EntityContext;
18class Vec3;
21// clang-format on
22
23class Squid : public ::Mob {
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<4, 16, ::mce::Color> mInkColor;
28 ::ll::TypedStorage<4, 4, float> mSpeed;
29 ::ll::TypedStorage<4, 4, float> mTentacleSpeed;
30 ::ll::TypedStorage<4, 4, float> mRotateSpeed;
31 ::ll::TypedStorage<4, 4, float> mXBodyRot;
32 ::ll::TypedStorage<4, 4, float> mXBodyRotO;
33 ::ll::TypedStorage<4, 4, float> mZBodyRot;
34 ::ll::TypedStorage<4, 4, float> mZBodyRotO;
35 ::ll::TypedStorage<4, 4, float> mTx;
36 ::ll::TypedStorage<4, 4, float> mTy;
37 ::ll::TypedStorage<4, 4, float> mTz;
38 ::ll::TypedStorage<4, 4, float> mTentacleMovement;
39 ::ll::TypedStorage<4, 4, float> mOldTentacleMovement;
40 ::ll::TypedStorage<4, 4, float> mTentacleAngle;
41 ::ll::TypedStorage<4, 4, float> mOldTentacleAngle;
42 // NOLINTEND
43
44public:
45 // prevent constructor by default
46 Squid();
47
48public:
49 // virtual functions
50 // NOLINTBEGIN
51 virtual void handleEntityEvent(::ActorEvent id, int data) /*override*/;
52
53 virtual bool checkSpawnObstruction() const /*override*/;
54
55 virtual bool checkSpawnRules(bool) /*override*/;
56
57 virtual ::ActorHurtResult
58 _hurt(::ActorDamageSource const& source, float damage, bool knock, bool ignite) /*override*/;
59
60 virtual ::SharedTypes::Legacy::LevelSoundEvent _getInkSquirtSoundEvent() const;
61
62 virtual void reloadHardcoded(::ActorInitializationMethod method, ::VariantParameterList const& params) /*override*/;
63 // NOLINTEND
64
65public:
66 // member functions
67 // NOLINTBEGIN
68 MCAPI Squid(
69 ::ActorDefinitionGroup* definitions,
70 ::ActorDefinitionIdentifier const& definitionName,
71 ::EntityContext& entityContext,
72 ::mce::Color const& inkParticleColor
73 );
74
75 MCAPI ::Vec3 _randomInkDir();
76
77 MCAPI float getTentacleAngle() const;
78
79 MCAPI float getTy();
80
81 MCFOLD float getZBodyRot() const;
82
83 MCAPI void postAiStep();
84
85 MCAPI void setTx(float val);
86
87 MCAPI void setTy(float val);
88
89 MCAPI void setTz(float val);
90
91 MCAPI void spawnInkParticles();
92 // NOLINTEND
93
94public:
95 // constructor thunks
96 // NOLINTBEGIN
97 MCAPI void* $ctor(
98 ::ActorDefinitionGroup* definitions,
99 ::ActorDefinitionIdentifier const& definitionName,
100 ::EntityContext& entityContext,
101 ::mce::Color const& inkParticleColor
102 );
103 // NOLINTEND
104
105public:
106 // virtual function thunks
107 // NOLINTBEGIN
108 MCAPI void $handleEntityEvent(::ActorEvent id, int data);
109
110 MCFOLD bool $checkSpawnObstruction() const;
111
112 MCAPI bool $checkSpawnRules(bool);
113
114 MCAPI ::ActorHurtResult $_hurt(::ActorDamageSource const& source, float damage, bool knock, bool ignite);
115
116 MCAPI ::SharedTypes::Legacy::LevelSoundEvent $_getInkSquirtSoundEvent() const;
117
118 MCFOLD void $reloadHardcoded(::ActorInitializationMethod method, ::VariantParameterList const& params);
119
120
121 // NOLINTEND
122
123public:
124 // vftables
125 // NOLINTBEGIN
126 MCAPI static void** $vftable();
127 // NOLINTEND
128};
Definition ActorDamageSource.h:18
Definition ActorDefinitionGroup.h:37
Definition ActorHurtResult.h:5
Definition EntityContext.h:17
Definition Vec3.h:10
Definition Color.h:13
Definition ActorDefinitionIdentifier.h:15
Definition VariantParameterList.h:14