LeviLamina
Loading...
Searching...
No Matches
LootItemCondition.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
8class Random;
9namespace Json { class Value; }
10// clang-format on
11
13public:
14 // LootItemCondition inner types define
15 enum class ConditionType : int {
16 KilledByPlayer = 0,
17 KilledByPlayerOrPets = 1,
18 KilledByActor = 2,
19 ActorKilled = 3,
20 RandomChance = 4,
21 RandomDifficultyChance = 5,
22 RandomChanceWithLooting = 6,
23 RandomRegionalDifficultyChance = 7,
24 HasMarkVariant = 8,
25 HasVariant = 9,
26 MatchTool = 10,
27 DamagedByActor = 11,
28 PassengerOfActor = 12,
29 IsBaby = 13,
30 ActorFilter = 14,
31 HasPropertyCondition = 15,
32 BoolPropertyValueCondition = 16,
33 IntPropertyValueCondition = 17,
34 FloatPropertyValueCondition = 18,
35 EnumPropertyValueCondition = 19,
36 };
37
38public:
39 // virtual functions
40 // NOLINTBEGIN
41 virtual ~LootItemCondition() = default;
42
43 virtual bool applies(::Random&, ::LootTableContext&) = 0;
44
45 virtual ::LootItemCondition::ConditionType getConditionType() const = 0;
46 // NOLINTEND
47
48public:
49 // static functions
50 // NOLINTBEGIN
51 MCNAPI static ::std::unique_ptr<::LootItemCondition> deserialize(::Json::Value const& object, bool);
52 // NOLINTEND
53
54public:
55 // virtual function thunks
56 // NOLINTBEGIN
57
58 // NOLINTEND
59};
Definition Value.h:16
Definition LootItemCondition.h:12
static MCAPI ::std::unique_ptr<::LootItemCondition > deserialize(::Json::Value const &object, bool)
Definition LootTableContext.h:20
Definition Random.h:10