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 fromSpawner) /*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
64 virtual ~Squid() /*override*/;
65 // NOLINTEND
66
67public:
68 // member functions
69 // NOLINTBEGIN
70 MCAPI Squid(
71 ::ActorDefinitionGroup* definitions,
72 ::ActorDefinitionIdentifier const& definitionName,
73 ::EntityContext& entityContext,
74 ::mce::Color const& inkParticleColor
75 );
76
77 MCAPI ::Vec3 _randomInkDir();
78
79 MCAPI void postAiStep();
80
81 MCAPI void spawnInkParticles();
82 // NOLINTEND
83
84public:
85 // constructor thunks
86 // NOLINTBEGIN
87 MCAPI void* $ctor(
88 ::ActorDefinitionGroup* definitions,
89 ::ActorDefinitionIdentifier const& definitionName,
90 ::EntityContext& entityContext,
91 ::mce::Color const& inkParticleColor
92 );
93 // NOLINTEND
94
95public:
96 // destructor thunk
97 // NOLINTBEGIN
98 MCFOLD void $dtor();
99 // NOLINTEND
100
101public:
102 // virtual function thunks
103 // NOLINTBEGIN
104#ifdef LL_PLAT_S
105 MCAPI void $handleEntityEvent(::ActorEvent id, int data);
106#endif
107
108 MCFOLD bool $checkSpawnObstruction() const;
109
110 MCAPI bool $checkSpawnRules(bool fromSpawner);
111
112 MCAPI ::ActorHurtResult $_hurt(::ActorDamageSource const& source, float damage, bool knock, bool ignite);
113
114 MCAPI ::SharedTypes::Legacy::LevelSoundEvent $_getInkSquirtSoundEvent() const;
115
116 MCFOLD void $reloadHardcoded(::ActorInitializationMethod method, ::VariantParameterList const& params);
117
118
119 // NOLINTEND
120
121public:
122 // vftables
123 // NOLINTBEGIN
124 MCAPI static void** $vftable();
125 // NOLINTEND
126};
Definition ActorDamageSource.h:18
Definition ActorDefinitionGroup.h:36
Definition ActorHurtResult.h:5
Definition EntityContext.h:16
Definition Vec3.h:10
Definition Color.h:13
Definition ActorDefinitionIdentifier.h:15
Definition VariantParameterList.h:13