Pioneer
Face.h
Go to the documentation of this file.
1 // Copyright © 2008-2021 Pioneer Developers. See AUTHORS.txt for details
2 // Licensed under the terms of the GPL v3. See licenses/GPL-3.txt
3 
4 #ifndef PIGUI_FACE_H
5 #define PIGUI_FACE_H
6 
7 #include "FaceParts.h"
8 #include "Pi.h"
9 #include "SmartPtr.h"
10 #include "graphics/Drawables.h"
11 #include "graphics/Texture.h"
12 
13 namespace PiGui {
14 
15  class Face : public RefCounted {
16  public:
17  Face(FaceParts::FaceDescriptor &face, Uint32 seed = 0);
18 
19  Uint32 GetTextureId();
21 
22  enum Flags { // <enum scope='PiGui::Face' name=PiGuiFaceFlags public>
23  RAND = 0,
24  MALE = (1 << 0),
25  FEMALE = (1 << 1),
26  GENDER_MASK = 0x03, // <enum skip>
27 
28  ARMOUR = (1 << 2),
29  };
30 
31  private:
32  Uint32 m_seed;
33 
34  static RefCountedPtr<Graphics::Material> s_material;
35 
37  std::unique_ptr<Graphics::Drawables::TexturedQuad> m_quad;
38  };
39 
40 } // namespace PiGui
41 
42 #endif
Definition: Face.h:15
vector2f GetTextureSize()
Definition: Face.cpp:39
Flags
Definition: Face.h:22
@ GENDER_MASK
Definition: Face.h:26
@ RAND
Definition: Face.h:23
@ ARMOUR
Definition: Face.h:28
@ MALE
Definition: Face.h:24
@ FEMALE
Definition: Face.h:25
Face(FaceParts::FaceDescriptor &face, Uint32 seed=0)
Definition: Face.cpp:13
Uint32 GetTextureId()
Definition: Face.cpp:34
Definition: RefCounted.h:11
Definition: LuaBody.cpp:28
Definition: FaceParts.h:23