Blamite Game Engine - Blam (Core)
resolution.hpp
Go to the documentation of this file.
1 #include "../console.h"
3 
4 namespace Blam::Console
5 {
14  {
15  public:
17  {
18  name = "screenres";
19  description = "Allows specifying the display resolution manually.";
20  syntax = "screenres <string>";
21  aliases = { "Settings.ScreenResolution" };
22 
24  }
25 
27  {
28  delete this;
29  }
30 
31  CommandStatus onCommand(std::vector<std::string> arguments)
32  {
33  if (arguments.size() == 1)
34  {
35  std::vector<std::string> resolution = Blam::Utils::String::Split(arguments[0], "x");
36 
37  int x = atoi(resolution[0].c_str());
38  int y = atoi(resolution[1].c_str());
39 
40  HRESULT hr = BlamRendering::SetDisplayRes(x, y);
41 
42  if (FAILED(hr))
43  {
44  Blam::Logger::LogEventForce("an error occurred while trying to set the resolution", WSV_ERROR);
45  }
46 
47  Blam::Logger::LogEvent("Screen resolution set to " + arguments[0], WSV_NONE);
48 
49  return CMD_OK;
50  }
51  else if (arguments.size() == 2)
52  {
53  int x = atoi(arguments[0].c_str());
54  int y = atoi(arguments[1].c_str());
55 
56  HRESULT hr = BlamRendering::SetDisplayRes(x, y);
57 
58  if (FAILED(hr))
59  {
60  Blam::Logger::LogEventForce("an error occurred while trying to set the resolution", WSV_ERROR);
61  }
62 
63  Blam::Logger::LogEvent("Screen resolution set to " + arguments[0] + "x" + arguments[1], WSV_NONE);
64 
65  return CMD_OK;
66  }
67  else
68  {
70  }
71  }
72  };
73 }
Blam::Console::ConsoleCommand::aliases
std::vector< std::string > aliases
A list of aliases for the command. Executing any of these instead of the command name will behave the...
Definition: console.h:75
Blam::Console::ConsoleCommand::description
std::string description
An optional description of the command. Shown when using the classify command.
Definition: console.h:73
CMD_ERR_WRONG_ARGS_COUNT
#define CMD_ERR_WRONG_ARGS_COUNT
Macro for Wrong Arg Count command status. See Blam::Console::WrongArgumentCount for more details.
Definition: console.h:11
Blam::Utils::String::Split
BLAM std::vector< std::string > Split(std::string string, std::string splitter)
Splits a string around any instance of a substring.
Definition: string.cpp:87
Blam::Console::ConsoleCommand::type
CommandType type
The type of command this is. See Blam::Console::CommandType for more information.
Definition: console.h:77
Blam::Logger::LogEvent
BLAM void LogEvent(std::string message)
Logs a message to the log and/or console.
Definition: aliases.cpp:33
Blam::Console::CommandStatus
CommandStatus
Indicates the return state of a console command.
Definition: console.h:28
logger.h
BlamRendering::SetDisplayRes
BLAM HRESULT SetDisplayRes(int x, int y)
Changes the game's display resolution.
Definition: rendering_abstraction.cpp:3
Blam::Console::Builtin
@ Builtin
A command that is hard-coded into the engine.
Definition: console.h:41
Blam::Console::ConsoleCommand::name
std::string name
The name of the console command.
Definition: console.h:70
WSV_ERROR
#define WSV_ERROR
Macro for 'Error' log seveirty. Original pre-enum value was 2.
Definition: logger.h:17
WSV_NONE
#define WSV_NONE
Macro for 'None' log seveirty. Original pre-enum value was 0.
Definition: logger.h:15
Blam::Console::ResolutionCommand::ResolutionCommand
ResolutionCommand()
Definition: resolution.hpp:16
Blam::Console::ResolutionCommand::onCommand
CommandStatus onCommand(std::vector< std::string > arguments)
Called upon command execution.
Definition: resolution.hpp:31
Blam::Console
Namespace for things relating to the debug console.
Definition: abort.hpp:5
Blam::Console::ConsoleCommand
Class used to represent a console command.
Definition: console.h:50
Blam::Logger::LogEventForce
BLAM void LogEventForce(std::string message, LogSeverity severity)
Forcibly logs a message to the log and/or console.
Definition: aliases.cpp:137
Blam::Console::ResolutionCommand::~ResolutionCommand
~ResolutionCommand()
Definition: resolution.hpp:26
CMD_OK
#define CMD_OK
Macro for OK command status. See Blam::Console::Ok for more details.
Definition: console.h:9
Blam::Console::ResolutionCommand
Class for the screenres command.
Definition: resolution.hpp:13
Blam::Console::ConsoleCommand::syntax
std::string syntax
The syntax information for the command. Shown to the user when using the help command with an argumen...
Definition: console.h:74