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;
20struct HurtParameters;
22// clang-format on
23
24class Squid : public ::Mob {
25public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<4, 16, ::mce::Color> mInkColor;
29 ::ll::TypedStorage<4, 4, float> mSpeed;
30 ::ll::TypedStorage<4, 4, float> mTentacleSpeed;
31 ::ll::TypedStorage<4, 4, float> mRotateSpeed;
32 ::ll::TypedStorage<4, 4, float> mXBodyRot;
33 ::ll::TypedStorage<4, 4, float> mXBodyRotO;
34 ::ll::TypedStorage<4, 4, float> mZBodyRot;
35 ::ll::TypedStorage<4, 4, float> mZBodyRotO;
36 ::ll::TypedStorage<4, 4, float> mTx;
37 ::ll::TypedStorage<4, 4, float> mTy;
38 ::ll::TypedStorage<4, 4, float> mTz;
39 ::ll::TypedStorage<4, 4, float> mTentacleMovement;
40 ::ll::TypedStorage<4, 4, float> mOldTentacleMovement;
41 ::ll::TypedStorage<4, 4, float> mTentacleAngle;
42 ::ll::TypedStorage<4, 4, float> mOldTentacleAngle;
43 // NOLINTEND
44
45public:
46 // prevent constructor by default
47 Squid();
48
49public:
50 // virtual functions
51 // NOLINTBEGIN
52 virtual void handleEntityEvent(::ActorEvent id, int data) /*override*/;
53
54 virtual bool checkSpawnObstruction() const /*override*/;
55
56 virtual bool checkSpawnRules(bool fromSpawner) /*override*/;
57
58 virtual ::ActorHurtResult
59 _hurt(::ActorDamageSource const& source, float damage, ::HurtParameters const& hurtParameters) /*override*/;
60
61 virtual ::SharedTypes::Legacy::LevelSoundEvent _getInkSquirtSoundEvent() const;
62
63 virtual void reloadHardcoded(::ActorInitializationMethod method, ::VariantParameterList const& params) /*override*/;
64 // NOLINTEND
65
66public:
67 // member functions
68 // NOLINTBEGIN
69 MCAPI Squid(
70 ::ActorDefinitionGroup* definitions,
71 ::ActorDefinitionIdentifier const& definitionName,
72 ::EntityContext& entityContext,
73 ::mce::Color const& inkParticleColor
74 );
75
76 MCAPI ::Vec3 _randomInkDir();
77
78 MCAPI void postAiStep();
79
80 MCAPI void spawnInkParticles();
81 // NOLINTEND
82
83public:
84 // constructor thunks
85 // NOLINTBEGIN
86 MCAPI void* $ctor(
87 ::ActorDefinitionGroup* definitions,
88 ::ActorDefinitionIdentifier const& definitionName,
89 ::EntityContext& entityContext,
90 ::mce::Color const& inkParticleColor
91 );
92 // NOLINTEND
93
94public:
95 // virtual function thunks
96 // NOLINTBEGIN
97 MCAPI void $handleEntityEvent(::ActorEvent id, int data);
98
99 MCFOLD bool $checkSpawnObstruction() const;
100
101 MCAPI bool $checkSpawnRules(bool fromSpawner);
102
103 MCAPI ::ActorHurtResult
104 $_hurt(::ActorDamageSource const& source, float damage, ::HurtParameters const& hurtParameters);
105
106 MCAPI ::SharedTypes::Legacy::LevelSoundEvent $_getInkSquirtSoundEvent() const;
107
108 MCFOLD void $reloadHardcoded(::ActorInitializationMethod method, ::VariantParameterList const& params);
109
110
111 // NOLINTEND
112
113public:
114 // vftables
115 // NOLINTBEGIN
116 MCAPI static void** $vftable();
117 // NOLINTEND
118};
Definition ActorDamageSource.h:18
Definition ActorDefinitionGroup.h:32
Definition ActorHurtResult.h:5
Definition EntityContext.h:15
Definition Vec3.h:10
Definition Color.h:13
Definition ActorDefinitionIdentifier.h:15
Definition HurtParameters.h:8
Definition VariantParameterList.h:13