Blamite Game Engine - blam!  00272.10.26.20.0001.blamite
The core library for the Blamite Game Engine.
crash.hpp
Go to the documentation of this file.
1 #include "../console.h"
2 
5 
6 namespace Blam::Console
7 {
15  {
16  public:
18  {
19  name = "crash";
20  description = "Crashes the engine. Requires CONFIRM argument to execute.";
21  aliases = { "kms" };
22 
24  }
25 
27  {
28  delete this;
29  }
30 
31  CommandStatus onCommand(std::vector<std::string> arguments)
32  {
33 
34  if (arguments.size() > 1)
35  {
37  }
38 
39  if (arguments.size() == 0)
40  {
41  Blam::Logger::LogEventForce("this command will crash the engine!", WSV_ERROR);
42  Blam::Logger::LogEventForce("if you are sure please run: crash CONFIRM", WSV_ERROR);
43 
44  return CMD_OK;
45  }
46 
47  if (arguments[0] == "CONFIRM")
48  {
49  BLAM_ASSERTM(0, "User manually invoked the crash.");
50  }
51  else
52  {
53  return CMD_ERR_INVALID_ARGS;
54  }
55 
56  return CommandStatus::Ok;
57  }
58  };
59 }
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::Console::ConsoleCommand::type
CommandType type
The type of command this is. See Blam::Console::CommandType for more information.
Definition: console.h:77
Blam::Console::CommandStatus
CommandStatus
Indicates the return state of a console command.
Definition: console.h:28
logger.h
Blam::Console::CrashCommand::CrashCommand
CrashCommand()
Definition: crash.hpp:17
Blam::Console::Builtin
@ Builtin
A command that is hard-coded into the engine.
Definition: console.h:41
Blam::Console::CrashCommand::onCommand
CommandStatus onCommand(std::vector< std::string > arguments)
Called upon command execution.
Definition: crash.hpp:31
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
Blam::Console::CrashCommand
Class for the crash command.
Definition: crash.hpp:14
BLAM_ASSERTM
#define BLAM_ASSERTM(x, msg)
Invokes an engine assertion, with an optional message.
Definition: crash.h:26
Blam::Console
Namespace for things relating to the debug console.
Definition: abort.hpp:5
crash.h
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:150
CMD_OK
#define CMD_OK
Macro for OK command status. See Blam::Console::Ok for more details.
Definition: console.h:9
CMD_ERR_INVALID_ARGS
#define CMD_ERR_INVALID_ARGS
Macro for Invalid Args command status. See Blam::Console::InvalidArguments for more details.
Definition: console.h:10
Blam::Globals::Ok
@ Ok
The global was updated successfully.
Definition: globals.h:202
Blam::Console::CrashCommand::~CrashCommand
~CrashCommand()
Definition: crash.hpp:26