LeviLamina
Loading...
Searching...
No Matches
RaidBossComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/legacy/ActorUniqueID.h"
7#include "mc/safety/RedactableString.h"
8#include "mc/world/actor/ai/util/BossEventUpdateType.h"
9#include "mc/world/phys/AABB.h"
10
11// auto generated forward declare list
12// clang-format off
13class Actor;
14class Mob;
15class Player;
16class Raid;
17class Village;
18// clang-format on
19
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::Village>> mVillage;
25 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mOwnerID;
26 ::ll::TypedStorage<8, 72, ::Bedrock::Safety::RedactableString> mName;
27 ::ll::TypedStorage<8, 32, ::std::string> mProgress;
28 ::ll::TypedStorage<4, 4, int> mPlayersRegistered;
29 ::ll::TypedStorage<1, 1, bool> mWaveStarted;
30 ::ll::TypedStorage<1, 1, bool> mRaidInProgress;
31 ::ll::TypedStorage<1, 1, bool> mHealthBarVisible;
32 ::ll::TypedStorage<4, 4, float> mHealthPercent;
33 ::ll::TypedStorage<4, 24, ::AABB> mBossBarVisibleBounds;
34 ::ll::TypedStorage<8, 8, ::std::chrono::steady_clock::time_point> mLastPlayerUpdate;
35 // NOLINTEND
36
37public:
38 // prevent constructor by default
39 RaidBossComponent& operator=(RaidBossComponent const&);
42
43public:
44 // member functions
45 // NOLINTBEGIN
47
48 MCAPI void _broadcastBossEvent(::BossEventUpdateType type, ::Actor& owner);
49
50 MCAPI void _handleRegisterPlayers(::Actor& owner);
51
52 MCAPI void _sendBossEvent(::BossEventUpdateType type, ::Player& player);
53
54 MCAPI ::Bedrock::Safety::RedactableString getName();
55
56 MCAPI bool isWithinRange(::Mob const& player);
57
58 MCAPI ::RaidBossComponent& operator=(::RaidBossComponent&&);
59
60 MCAPI void removeBossBar(::Actor& owner);
61
62 MCAPI bool tryRemoveBoss(::Actor& owner, ::Player& player);
63
64 MCAPI void updateBossBarStats(::Actor& owner, ::Raid const& raid);
65
66 MCAPI void updateHealthBarVisible(bool visible, ::Actor& owner);
67
68 MCAPI ~RaidBossComponent();
69 // NOLINTEND
70
71public:
72 // constructor thunks
73 // NOLINTBEGIN
74 MCAPI void* $ctor(::RaidBossComponent&&);
75 // NOLINTEND
76
77public:
78 // destructor thunk
79 // NOLINTBEGIN
80 MCAPI void $dtor();
81 // NOLINTEND
82};
Definition Actor.h:102
Definition Mob.h:47
Definition Player.h:123
Definition RaidBossComponent.h:20
Definition Raid.h:16
Definition Village.h:34