LeviLamina
Loading...
Searching...
No Matches
ProjectileFactory.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7class Actor;
8class Level;
9class Mob;
11class Vec3;
13namespace Json { class Value; }
14// clang-format on
15
17public:
18 // member variables
19 // NOLINTBEGIN
20 ::ll::TypedStorage<8, 8, ::Level&> mLevel;
21 // NOLINTEND
22
23public:
24 // prevent constructor by default
25 ProjectileFactory& operator=(ProjectileFactory const&);
28
29public:
30 // member functions
31 // NOLINTBEGIN
32 MCAPI ::Actor* shootProjectileFromDefinition(
33 ::ActorDefinitionIdentifier const& identifier,
34 ::Mob* owner,
35 ::Vec3 targetDir,
36 int auxValue,
37 float throwPower,
38 bool useUnmodifiedDirection,
39 bool overrideSpawnPosition,
40 ::Vec3 spawnPosition
41 );
42 // NOLINTEND
43
44public:
45 // static functions
46 // NOLINTBEGIN
47 MCAPI static ::std::unique_ptr<::OnHitSubcomponent>
48 createSubcomponent(::Json::Value& trigger, ::std::string const& name);
49
50 MCAPI static void initFactory();
51 // NOLINTEND
52
53public:
54 // static variables
55 // NOLINTBEGIN
56 MCAPI static ::std::unordered_map<::std::string, ::std::function<::std::unique_ptr<::OnHitSubcomponent>()>>&
57 mSubcomponentMap();
58 // NOLINTEND
59};
Definition Actor.h:103
Definition Value.h:16
Definition Level.h:238
Definition Mob.h:47
Definition OnHitSubcomponent.h:12
Definition ProjectileFactory.h:16
Definition Vec3.h:10
Definition ActorDefinitionIdentifier.h:15