Blamite Game Engine - blam!  00296.01.12.21.0102.blamite
The core library for the Blamite Game Engine.
about_blamite_new.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #include "../debug_ui.h"
4 
5 #include <Strings/components/utils/utilities.h>
6 
8 {
13  {
14  protected:
15  bool show_credits = false;
16 
17  public:
22 
27 
31  void Draw()
32  {
33  // About Blamite
34  if (show)
35  {
36  if (ImGui::Begin("About Blamite", &show, ImGuiWindowFlags_AlwaysAutoResize))
37  {
38  ImGui::Text("Engine version: %s", Blam::EngineDefs::GetVersion());
39 
40  ImGui::Separator();
41  ImGui::Text("The Blamite Game Engine was created by Elaztek Studios");
43 
44  ImGui::Separator();
45  ImGui::Text("Build Info");
46  ImGui::SameLine();
47  Blam::DebugUI::Widgets::ShowHelpMarker("Commit, build number and revision will be inaccurate if this executable was built locally.\r\n\r\nOnly builds acquired via Jenkins or BuildMaster will have accurate build information.");
48 
49  ImGui::Text("Current commit: %s", CURRENT_COMMIT);
50  ImGui::Text("Build #: %s", STAMPED_BUILD);
51  ImGui::Text("Revision: %s", STAMPED_REVISION);
52  ImGui::Text("");
53  ImGui::Text("Build date: %s", __DATE__);
54  ImGui::Text("Build time: %s", __TIME__);
55 
56  ImGui::Separator();
57  if (ImGui::Button("Changelog"))
58  {
59  BlamStrings::Utils::OpenWebURL("https://elaztek.com/blogs/blog/4-blam-update-notes/");
60  }
61  ImGui::SameLine();
62  if (ImGui::Button("Credits"))
63  {
64  show_credits = true;
65  }
66  }
67 
68  ImGui::End();
69  }
70 
71  if (show_credits)
72  {
73  ShowCredits();
74  }
75  }
76 
77  void ShowCredits()
78  {
79  if (ImGui::Begin("Credits", &show_credits, ImGuiWindowFlags_AlwaysAutoResize))
80  {
81  ImGui::Text("The Blamite Game Engine is a game engine designed to mimic the behavior of Bungie's");
82  ImGui::Text("'Blam!' engine, the custom engine used in nearly every Halo game. This project is a");
83  ImGui::Text("massive undertaking and would have never been possible without the incredible Halo");
84  ImGui::Text("community's research and work invested into digging into the engine's deepest secrets.");
85 
86  ImGui::Text("");
87  ImGui::Text("");
88 
89  int second_x = ImGui::GetWindowWidth() / 2;
90 
91  ImGui::Text("The Team Behind XboxChaos' Assembly");
92  ImGui::Separator();
93 
94  ImGui::Text("AMD (Aaron Dierking)"); ImGui::SameLine(second_x); ImGui::Text("Gabe_k (Gabriel Kirkpatrick)");
95  ImGui::Text("Xerax (Alex Reed)"); ImGui::SameLine(second_x); ImGui::Text("Lord Zedd"); //do a thing with morgan freeman
96  ImGui::Text("DeadCanadian (Jordan Mueller)"); ImGui::SameLine(second_x); ImGui::Text("SnipeStyle");
97  ImGui::Text("Thunder (TJ Tunnell)"); ImGui::SameLine(second_x); ImGui::Text("OrangeMohawk (Collin Dillinger)");
98 
99 
100  ImGui::Text("");
101 
102 
103  ImGui::Text("Special Thanks");
104  ImGui::Separator();
105 
106  ImGui::Text("Xenomega (Xenon, DeToX)"); ImGui::SameLine(second_x); ImGui::Text("Shade45");
107  ImGui::Text("Kornman00"); ImGui::SameLine(second_x); ImGui::Text("Anthony");
108  ImGui::Text("CLK"); ImGui::SameLine(second_x); ImGui::Text("KingDingDan");
109  ImGui::Text("DarkShallFall"); ImGui::SameLine(second_x); ImGui::Text("XenonDev");
110  ImGui::Text("Prey"); ImGui::SameLine(second_x); ImGui::Text("Gravemind");
111 
112 
113  ImGui::Text("");
114  ImGui::Text("");
115 
116  ImGui::Text("On top of these people, there's all the many people of the Halo modding community, Elaztek's");
117  ImGui::Text("Team, and so many more who just couldn't fit here. Your efforts, for Blamite itself or for");
118  ImGui::Text("the outside work that enabled Blamite to become a reality, will be remembered. Without every");
119  ImGui::Text("single one of you, we wouldn't be where we are today.");
120 
121 
122  ImGui::Text("Thank you.");
123 
124  ImGui::Separator();
125  if (ImGui::Button("Close"))
126  {
127  show_credits = false;
128  }
129 
130  ImGui::End();
131  }
132  }
133  };
134 }
Blam::DebugUI::Windows::AboutBlamiteNew::AboutBlamiteNew
AboutBlamiteNew()
Empty constructor.
Definition: about_blamite_new.hpp:21
Blam::DebugUI::Widgets::ShowHelpMarker
BLAM void ShowHelpMarker(const char *desc)
Shows a help indicator.
Definition: widgets.cpp:7
Blam::Modules::Keystone::OpenWebURL
BLAM bool OpenWebURL(std::string url)
Definition: keystone.cpp:88
Blam::DebugUI::Windows::AboutBlamiteNew::Draw
void Draw()
Draws the about box.
Definition: about_blamite_new.hpp:31
Blam::DebugUI::Windows::AboutBlamiteNew::show_credits
bool show_credits
Controls whether or not to show the credits dialog.
Definition: about_blamite_new.hpp:15
Blam::DebugUI::Windows::AboutBlamiteNew::ShowCredits
void ShowCredits()
Definition: about_blamite_new.hpp:77
STAMPED_REVISION
#define STAMPED_REVISION
Definition: version_data.h:16
Blam::EngineDefs::GetVersion
const BLAM char * GetVersion()
Retrieves the version of the engine in the following format:
Definition: engine_definitions.cpp:108
Blam::DebugUI::ImGUIDrawingGroup::show
bool show
Controls whether or not the group should be shown. May not be used in all groups.
Definition: debug_ui.h:362
STAMPED_BUILD
#define STAMPED_BUILD
Definition: version_data.h:15
Blam::DebugUI::ImGUIDrawingGroup
Class representing an ImGUI drawing group/draw list item.
Definition: debug_ui.h:359
CURRENT_COMMIT
#define CURRENT_COMMIT
Definition: version_data.h:14
Blam::DebugUI::Windows::AboutBlamiteNew
Class for Blamite's ImGUI-based About box.
Definition: about_blamite_new.hpp:12
Blam::DebugUI::Windows
Legacy namespace to contain data for the legacy ImGUI console.
Definition: debug_ui.h:434
COPYRIGHT
#define COPYRIGHT
Definition: engine_definitions.h:73
Text
@ Text
Master text object that wraps around both BitmapText and DWText.
Definition: render_stack.h:73
Blam::DebugUI::Windows::AboutBlamiteNew::~AboutBlamiteNew
~AboutBlamiteNew()
Empty destructor.
Definition: about_blamite_new.hpp:26