Elaztek Developer Hub
Blamite Game Engine - blam!  00423.10.27.24.0533.blamite
The core library for the Blamite Game Engine.
about_blamite.hpp
Go to the documentation of this file.
1 #pragma once
2 
4 
5 #include <Strings/components/utils/web/web.h>
6 
9 #include "version_data.h"
10 
38 {
39 protected:
40  bool show_release_history = false;
41 
42 public:
46  void Draw()
47  {
48  // About Blamite
49  if (show)
50  {
52  ImGui::Text("Engine version: %s", ENGINE_VERSION);
53  ImGui::Text("UI version: %s", "unused");
55  ImGui::Text("Created by Elaztek Studios");
57  ImGui::Text("The Blamite engine was coded by hand to mimic the Blam engine.");
58  ImGui::Text("Special thanks to the talented team behind Assembly and XboxChaos");
59  ImGui::Text("for laying the groundwork for the functionality of the engine.");
60  ImGui::Text("Shoutout to Bungie Studios and 343 Industries!");
62  ImGui::Text("Build date: %s", __DATE__);
63  ImGui::Text("Build time: %s", __TIME__);
65  if (ImGui::Button("Changelog"))
66  {
67  BlamStrings::Utils::Web::OpenWebURL("https://elaztek.com/blogs/blog/4-blam-update-notes/");
68  }
70  if (ImGui::Button("Release History (no longer updated)"))
71  {
72  show_release_history = true;
73  }
74  ImGui::End();
75  }
76 
77 
78  // Engine Revision History
80  {
83  ImGui::Text("This version: %s", ENGINE_VERSION);
84 
86  ImGui::Text("The information here is inaccurate and no longer being updated. Please\r\nrefer to the Elaztek Website or the Blamite Gitlab repository for the current changelog.");
88 
90  //10000.10.16.16.0001.blamite
91  if (ImGui::CollapsingHeader("10000.10.16.16.0001.blamite"))
92  {
93  ImGui::Text("Game Title: N/A");
94  ImGui::Text("Contributors: haloman30");
95 
96  static bool read_only = true;
97  static char text[1024 * 16] =
98  "This is the inception of the engine. It introduced DirectX 11 rendering,"
99  "\nand the ImGUI debugging UI system. This build is present in current"
100  "\nengine builds under the name blam-ui-window-dx11-demo";
101 
103  //ImGui::Checkbox("Read-only", &read_only);
106 
107  }
108  //00001.10.17.16.0001.blamite
109  if (ImGui::CollapsingHeader("00001.10.17.16.0001.blamite"))
110  {
111  ImGui::Text("Game Title: N/A");
112  ImGui::Text("Contributors: haloman30");
113 
114  static bool read_only = true;
115  static char text[1024 * 16] =
116  "This version includes various attempts at screenshot functions, and"
117  "\nmarked the point where the legacy DirectX SDK was retired in favor"
118  "\nof the updated DirectX Toolkit (DirectXTK).";
119 
121  //ImGui::Checkbox("Read-only", &read_only);
124 
125  }
126  //00001.10.04.17.0001.blamite
127  if (ImGui::CollapsingHeader("00001.10.04.17.0001.blamite"))
128  {
129  ImGui::Text("Game Title: N/A");
130  ImGui::Text("Contributors: haloman30");
131 
132  static bool read_only = true;
133  static char text[1024 * 16] =
134  "This version marks real feature additions to the engine. Screenshots"
135  "\nwere now being properly taken/saved, and an 'Open Game Dir' function"
136  "\nwas introduced.";
137 
139  //ImGui::Checkbox("Read-only", &read_only);
142 
143  }
144  //00002.02.25.18.0001.blamite
145  if (ImGui::CollapsingHeader("00002.02.25.18.0001.blamite"))
146  {
147  ImGui::Text("Game Title: N/A");
148  ImGui::Text("Contributors: haloman30");
149 
150  static bool read_only = true;
151  static char text[1024 * 16] =
152  "This version introduces the console, as well as several commands, as well"
153  "\nas adds a work-in-progress stats view. It also tests shadowed text by"
154  "\nre-drawing the same content twice (hacky but it works).";
155 
157  //ImGui::Checkbox("Read-only", &read_only);
160 
161  }
162  //00003.04.29.18.0001.blamite
163  if (ImGui::CollapsingHeader("00003.04.29.18.0001.blamite"))
164  {
165  ImGui::Text("Game Title: N/A");
166  ImGui::Text("Contributors: haloman30, AwakenedRage");
167 
168  static bool read_only = true;
169  static char text[1024 * 16] =
170  "This version introduces support for CSC and HSC. It focuses primarily"
171  "\non command-based scripting. It also introduces BlamPhyLib and"
172  "\nBlamMathLib, both of which are preperations for a basic phyiscs engine."
173  "\nIt also introduced a special crash screen that are displayed on asserts.";
174 
176  //ImGui::Checkbox("Read-only", &read_only);
179  }
180 
181  /*if (ImGui::CollapsingHeader("PLACEHOLDER"))
182  {
183  ImGui::Text("Game Title: {enter game title here}");
184  ImGui::Text("Contributors: {enter contributing people/groups/studios here}");
185 
186  static bool read_only = true;
187  static char text[1024 * 16] =
188  "This box is meant to hold any notable information about this release build."
189  "\nIt can specify any major overhauls, additions, or anything else noteworthy"
190  "\nin this release from the previous.";
191 
192  ImGui::PushStyleVar(ImGuiStyleVar_FramePadding, ImVec2(0, 0));
193  //ImGui::Checkbox("Read-only", &read_only);
194  ImGui::PopStyleVar();
195  ImGui::InputTextMultiline("##source", text, IM_ARRAYSIZE(text), ImVec2(-1.0f, ImGui::GetTextLineHeight() * 16), ImGuiInputTextFlags_AllowTabInput | (read_only ? ImGuiInputTextFlags_ReadOnly : 0));
196 
197  }*/
198  ImGui::End();
199  }
200  }
201 };
ImGuiInputTextFlags_ReadOnly
@ ImGuiInputTextFlags_ReadOnly
Definition: imgui.h:769
BlamImGuiWindow::show
bool show
Controls whether or not the group should be shown. May not be used in all groups.
Definition: imgui.h:34
version_data.h
ImGui::PopStyleColor
IMGUI_API void PopStyleColor(int count=1)
Definition: imgui.cpp:6341
ImVec4
Definition: imgui.h:192
ImGui::GetTextLineHeight
IMGUI_API float GetTextLineHeight()
Definition: imgui.cpp:6837
ImGui::End
IMGUI_API void End()
Definition: imgui.cpp:6016
ImGui::PopStyleVar
IMGUI_API void PopStyleVar(int count=1)
Definition: imgui.cpp:6423
ImGui::SameLine
IMGUI_API void SameLine(float offset_from_start_x=0.0f, float spacing=-1.0f)
Definition: imgui.cpp:7147
ImGuiStyleVar_FramePadding
@ ImGuiStyleVar_FramePadding
Definition: imgui.h:1102
BlamImGuiWindow
Class representing an ImGUI window.
Definition: imgui.h:31
ImVec2
Definition: imgui.h:179
ImGui::Begin
IMGUI_API bool Begin(const char *name, bool *p_open=NULL, ImGuiWindowFlags flags=0)
Definition: imgui.cpp:5397
ImGui::PushStyleVar
IMGUI_API void PushStyleVar(ImGuiStyleVar idx, float val)
Definition: imgui.cpp:6395
ImGui::CollapsingHeader
IMGUI_API bool CollapsingHeader(const char *label, ImGuiTreeNodeFlags flags=0)
Definition: imgui_widgets.cpp:5422
ENGINE_VERSION
#define ENGINE_VERSION
Definition: version_data.h:32
BlamImGuiWindow_AboutBlamite::show_release_history
bool show_release_history
Toggles the release history window.
Definition: about_blamite.hpp:40
ImGui::Text
IMGUI_API void Text(const char *fmt,...) IM_FMTARGS(1)
Definition: imgui_widgets.cpp:238
BlamImGuiWindow_AboutBlamite
Class for the legacy ImGUI-based About box.
Definition: about_blamite.hpp:37
BlamImGuiWindow_AboutBlamite::Draw
void Draw()
Draws the About window.
Definition: about_blamite.hpp:46
ImGui::SetNextWindowSize
IMGUI_API void SetNextWindowSize(const ImVec2 &size, ImGuiCond cond=0)
Definition: imgui.cpp:6741
ImGuiInputTextFlags_AllowTabInput
@ ImGuiInputTextFlags_AllowTabInput
Definition: imgui.h:765
utilities.h
IM_ARRAYSIZE
#define IM_ARRAYSIZE(_ARR)
Definition: imgui.h:75
ImGui::InputTextMultiline
IMGUI_API bool InputTextMultiline(const char *label, char *buf, size_t buf_size, const ImVec2 &size=ImVec2(0, 0), ImGuiInputTextFlags flags=0, ImGuiInputTextCallback callback=NULL, void *user_data=NULL)
Definition: imgui_widgets.cpp:3074
engine_definitions.h
ImGuiWindowFlags_AlwaysAutoResize
@ ImGuiWindowFlags_AlwaysAutoResize
Definition: imgui.h:720
ImGuiCol_Text
@ ImGuiCol_Text
Definition: imgui.h:1027
Blam::API::v1::HS::OpenWebURL
void OpenWebURL(std::string url)
Definition: hs.cpp:114
imgui.h
ImGui::Separator
IMGUI_API void Separator()
Definition: imgui_widgets.cpp:1284
ImGuiWindowFlags_NoResize
@ ImGuiWindowFlags_NoResize
Definition: imgui.h:715
ImGui::Button
IMGUI_API bool Button(const char *label, const ImVec2 &size=ImVec2(0, 0))
Definition: imgui_widgets.cpp:644
ImGui::PushStyleColor
IMGUI_API void PushStyleColor(ImGuiCol idx, ImU32 col)
Definition: imgui.cpp:6321