Blamite Game Engine - blam!  00263.10.17.20.0001.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 
7 {
12  {
13  protected:
14  bool show_credits = false;
15 
16  public:
21 
26 
30  void Draw()
31  {
32  // About Blamite
33  if (show)
34  {
35  if (ImGui::Begin("About Blamite", &show, ImGuiWindowFlags_AlwaysAutoResize))
36  {
37  ImGui::Text("Engine version: %s", Blam::EngineDefs::GetVersion());
38 
39  ImGui::Separator();
40  ImGui::Text("The Blamite Game Engine was created by Elaztek Studios");
42 
43  ImGui::Separator();
44  ImGui::Text("Build Info");
45  ImGui::SameLine();
46  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.");
47 
48  ImGui::Text("Current commit: %s", CURRENT_COMMIT);
49  ImGui::Text("Build #: %s", STAMPED_BUILD);
50  ImGui::Text("Revision: %s", STAMPED_REVISION);
51  ImGui::Text("");
52  ImGui::Text("Build date: %s", __DATE__);
53  ImGui::Text("Build time: %s", __TIME__);
54 
55  ImGui::Separator();
56  if (ImGui::Button("Changelog"))
57  {
58  Blam::Utils::OpenWebURL("https://elaztek.com/blogs/blog/4-blam-update-notes/");
59  }
60  ImGui::SameLine();
61  if (ImGui::Button("Credits"))
62  {
63  show_credits = true;
64  }
65  }
66 
67  ImGui::End();
68  }
69 
70  if (show_credits)
71  {
72  ShowCredits();
73  }
74  }
75 
76  void ShowCredits()
77  {
78  if (ImGui::Begin("Credits", &show_credits, ImGuiWindowFlags_AlwaysAutoResize))
79  {
80  ImGui::Text("The Blamite Game Engine is a game engine designed to mimic the behavior of Bungie's");
81  ImGui::Text("'Blam!' engine, the custom engine used in nearly every Halo game. This project is a");
82  ImGui::Text("massive undertaking and would have never been possible without the incredible Halo");
83  ImGui::Text("community's research and work invested into digging into the engine's deepest secrets.");
84 
85  ImGui::Text("");
86  ImGui::Text("");
87 
88  int second_x = ImGui::GetWindowWidth() / 2;
89 
90  ImGui::Text("The Team Behind XboxChaos' Assembly");
91  ImGui::Separator();
92 
93  ImGui::Text("AMD (Aaron Dierking)"); ImGui::SameLine(second_x); ImGui::Text("Gabe_k (Gabriel Kirkpatrick)");
94  ImGui::Text("Xerax (Alex Reed)"); ImGui::SameLine(second_x); ImGui::Text("Lord Zedd"); //do a thing with morgan freeman
95  ImGui::Text("DeadCanadian (Jordan Mueller)"); ImGui::SameLine(second_x); ImGui::Text("SnipeStyle");
96  ImGui::Text("Thunder (TJ Tunnell)"); ImGui::SameLine(second_x); ImGui::Text("OrangeMohawk (Collin Dillinger)");
97 
98 
99  ImGui::Text("");
100 
101 
102  ImGui::Text("Special Thanks");
103  ImGui::Separator();
104 
105  ImGui::Text("Xenomega (Xenon, DeToX)"); ImGui::SameLine(second_x); ImGui::Text("Shade45");
106  ImGui::Text("Kornman00"); ImGui::SameLine(second_x); ImGui::Text("Anthony");
107  ImGui::Text("CLK"); ImGui::SameLine(second_x); ImGui::Text("KingDingDan");
108  ImGui::Text("DarkShallFall"); ImGui::SameLine(second_x); ImGui::Text("XenonDev");
109  ImGui::Text("Prey"); ImGui::SameLine(second_x); ImGui::Text("Gravemind");
110 
111 
112  ImGui::Text("");
113  ImGui::Text("");
114 
115  ImGui::Text("On top of these people, there's all the many people of the Halo modding community, Elaztek's");
116  ImGui::Text("Team, and so many more who just couldn't fit here. Your efforts, for Blamite itself or for");
117  ImGui::Text("the outside work that enabled Blamite to become a reality, will be remembered. Without every");
118  ImGui::Text("single one of you, we wouldn't be where we are today.");
119 
120 
121  ImGui::Text("Thank you.");
122 
123  ImGui::Separator();
124  if (ImGui::Button("Close"))
125  {
126  show_credits = false;
127  }
128 
129  ImGui::End();
130  }
131  }
132  };
133 }
Blam::DebugUI::Windows::AboutBlamiteNew::AboutBlamiteNew
AboutBlamiteNew()
Empty constructor.
Definition: about_blamite_new.hpp:20
Blam::DebugUI::Widgets::ShowHelpMarker
BLAM void ShowHelpMarker(const char *desc)
Shows a help indicator.
Definition: widgets.cpp:5
Blam::DebugUI::Windows::AboutBlamiteNew::Draw
void Draw()
Draws the about box.
Definition: about_blamite_new.hpp:30
Blam::DebugUI::Windows::AboutBlamiteNew::show_credits
bool show_credits
Controls whether or not to show the credits dialog.
Definition: about_blamite_new.hpp:14
Blam::DebugUI::Windows::AboutBlamiteNew::ShowCredits
void ShowCredits()
Definition: about_blamite_new.hpp:76
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:441
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:408
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:11
Blam::DebugUI::Windows
Legacy namespace to contain data for the legacy ImGUI console.
Definition: debug_ui.h:493
COPYRIGHT
#define COPYRIGHT
Definition: engine_definitions.h:73
Blam::Utils::OpenWebURL
BLAM void OpenWebURL(std::string url)
Opens the specified URL in the user's default web browser.
Definition: web.cpp:4
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:25