Веб-сайт самохостера Lotigara

summaryrefslogtreecommitdiff
path: root/source/frontend/StarMainInterfaceTypes.hpp
blob: afa9fb2498cf163e1571b4b75d5377952c5dba64 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
#pragma once

#include "StarJson.hpp"
#include "StarPoly.hpp"
#include "StarBiMap.hpp"
#include "StarRegisteredPaneManager.hpp"
#include "StarAnimation.hpp"
#include "StarText.hpp"

namespace Star {

STAR_STRUCT(MainInterfaceConfig);

enum class MainInterfacePanes {
  EscapeDialog,
  Inventory,
  Codex,
  Cockpit,
  Tech,
  Songbook,
  Ai,
  Popup,
  Confirmation,
  JoinRequest,
  Options,
  QuestLog,
  ActionBar,
  TeamBar,
  StatusPane,
  Chat,
  WireInterface,
  PlanetText,
  RadioMessagePopup,
  CraftingPlain,
  QuestTracker,
  MmUpgrade,
  Collections,
  CharacterSwap
};

extern EnumMap<MainInterfacePanes> const MainInterfacePanesNames;

typedef RegisteredPaneManager<MainInterfacePanes> MainInterfacePaneManager;

struct MainInterfaceConfig {
  static MainInterfaceConfigPtr loadFromAssets();

  TextStyle textStyle;

  String inventoryImage;
  String inventoryImageHover;
  String inventoryImageGlow;
  String inventoryImageGlowHover;
  String inventoryImageOpen;
  String inventoryImageOpenHover;

  String beamDownImage;
  String beamDownImageHover;

  String deployImage;
  String deployImageHover;
  String deployImageDisabled;
  String beamUpImage;
  String beamUpImageHover;

  String craftImage;
  String craftImageHover;
  String craftImageOpen;
  String craftImageOpenHover;

  String codexImage;
  String codexImageHover;
  String codexImageOpen;
  String codexImageHoverOpen;

  String questLogImage;
  String questLogImageHover;
  String questLogImageOpen;
  String questLogImageHoverOpen;

  String mmUpgradeImage;
  String mmUpgradeImageHover;
  String mmUpgradeImageOpen;
  String mmUpgradeImageHoverOpen;
  String mmUpgradeImageDisabled;

  String collectionsImage;
  String collectionsImageHover;
  String collectionsImageOpen;
  String collectionsImageHoverOpen;
  String collectionsImageDisabled;

  Vec2I mainBarInventoryButtonOffset;
  Vec2I mainBarCraftButtonOffset;
  Vec2I mainBarCodexButtonOffset;
  Vec2I mainBarBeamButtonOffset;
  Vec2I mainBarDeployButtonOffset;
  Vec2I mainBarQuestLogButtonOffset;
  Vec2I mainBarMmUpgradeButtonOffset;
  Vec2I mainBarCollectionsButtonOffset;

  PolyI mainBarInventoryButtonPoly;
  PolyI mainBarCraftButtonPoly;
  PolyI mainBarCodexButtonPoly;
  PolyI mainBarBeamButtonPoly;
  PolyI mainBarDeployButtonPoly;
  PolyI mainBarQuestLogButtonPoly;
  PolyI mainBarMmUpgradeButtonPoly;
  PolyI mainBarCollectionsButtonPoly;

  PolyI mainBarPoly;
  Vec2I mainBarSize;

  Vec2I itemCountRightAnchor;
  Vec2I inventoryItemMouseOffset;

  unsigned maxMessageCount;
  String overflowMessageText;

  Vec2I messageBarPos;
  Vec2I messageItemOffset;

  String messageTextContainer;
  Vec2I messageTextContainerOffset;
  Vec2I messageTextOffset;

  float messageTime;
  float messageHideTime;
  Vec2I messageActiveOffset;
  Vec2I messageHiddenOffset;
  Vec2I messageHiddenOffsetBar;
  float messageWindowSpring;
  float monsterHealthBarTime;

  String hungerIcon;

  float planetNameTime;
  float planetNameFadeTime;
  String planetNameFormatString;
  TextStyle planetNameTextStyle;
  Vec2I planetNameOffset;

  bool renderVirtualCursor;
  Json cursorItemSlot;

  Vec2I debugOffset;
  TextStyle debugTextStyle;
  float debugSpatialClearTime;
  float debugMapClearTime;
  Color debugBackgroundColor;
  int debugBackgroundPad;

  StringMap<StringList> macroCommands;
};

}