Blamite Game Engine - blam!  00296.01.12.21.0102.blamite
The core library for the Blamite Game Engine.
crash.hpp
Go to the documentation of this file.
1 #include "../console.h"
2 
5 
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  BlamCommandResult 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 BlamCommandResult::Ok;
57  }
58  };
59 }
CMD_ERR_WRONG_ARGS_COUNT
#define CMD_ERR_WRONG_ARGS_COUNT
Macro for Wrong Arg Count command status. See #Blam::Resources::Console::WrongArgumentCount for more ...
Definition: console.h:10
BlamConsoleCommand::description
std::string description
An optional description of the command. Shown when using the classify command.
Definition: console.h:57
logger.h
BlamCommandResult::Ok
@ Ok
The command was run without error.
BlamConsoleCommand
Class used to represent a console command.
Definition: console.h:54
Blam::Resources::Console::CrashCommand
Class for the crash command.
Definition: crash.hpp:14
WSV_ERROR
#define WSV_ERROR
Macro for 'Error' log seveirty. Original pre-enum value was 2.
Definition: logger.h:17
Blam::Logger::LogEventForce
BLAM void LogEventForce(std::string message, BlamLogLevel severity)
Forcibly logs a message to the log and/or console.
Definition: aliases.cpp:218
Blam::Resources::Console::CrashCommand::~CrashCommand
~CrashCommand()
Definition: crash.hpp:26
BlamConsoleCommand::name
std::string name
The name of the console command.
Definition: console.h:56
Blam::Resources::Console::CrashCommand::onCommand
BlamCommandResult onCommand(std::vector< std::string > arguments)
Called upon command execution.
Definition: crash.hpp:31
BLAM_ASSERTM
#define BLAM_ASSERTM(x, msg)
Invokes an engine assertion, with an optional message.
Definition: crash.h:26
Blam::Resources::Console::CrashCommand::CrashCommand
CrashCommand()
Definition: crash.hpp:17
crash.h
BlamConsoleCommand::type
BlamCommandType type
The type of command this is. See #Blam::Resources::Console::BlamCommandType for more information.
Definition: console.h:61
BlamCommandType::Builtin
@ Builtin
A command that is hard-coded into the engine.
CMD_OK
#define CMD_OK
Macro for OK command status. See #Blam::Resources::Console::Ok for more details.
Definition: console.h:8
BlamCommandResult
BlamCommandResult
Indicates the return state of a console command.
Definition: console.h:22
BlamConsoleCommand::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:59
CMD_ERR_INVALID_ARGS
#define CMD_ERR_INVALID_ARGS
Macro for Invalid Args command status. See #Blam::Resources::Console::InvalidArguments for more detai...
Definition: console.h:9
Blam::Resources::Console
Namespace for things relating to the debug console.
Definition: abort.hpp:5