mirror of https://github.com/AxioDL/metaforce.git
Add ability to remove items (WIP)
This commit is contained in:
parent
2b022c7d72
commit
6ead37804b
|
@ -438,6 +438,21 @@ void CMain::Give(hecl::Console* console, const std::vector<std::string>& args) {
|
|||
console->report(hecl::Console::Level::Info, "Cheater....., Greatly increasing Metroid encounters, have fun!");
|
||||
}
|
||||
|
||||
void CMain::Remove(hecl::Console*, const std::vector<std::string>& args) {
|
||||
if (args.size() < 1 || (!g_GameState || !g_GameState->GetPlayerState()))
|
||||
return;
|
||||
|
||||
std::string type = args[0];
|
||||
athena::utility::tolower(type);
|
||||
std::shared_ptr<CPlayerState> pState = g_GameState->GetPlayerState();
|
||||
CPlayerState::EItemType eType = CPlayerState::ItemNameToType(type);
|
||||
if (eType != CPlayerState::EItemType::Invalid) {
|
||||
pState->ReInitalizePowerUp(eType, 0);
|
||||
if (g_StateManager)
|
||||
g_StateManager->Player()->AsyncLoadSuit(*g_StateManager);
|
||||
}
|
||||
}
|
||||
|
||||
void CMain::God(hecl::Console* con, const std::vector<std::string>&) {
|
||||
if (g_GameState && g_GameState->GetPlayerState()) {
|
||||
g_GameState->GetPlayerState()->SetCanTakeDamage(!g_GameState->GetPlayerState()->CanTakeDamage());
|
||||
|
@ -631,6 +646,9 @@ void CMain::Init(const hecl::Runtime::FileStoreManager& storeMgr, hecl::CVarMana
|
|||
m_console->registerCommand("Give"sv, "Gives the player the specified item, maxing it out"sv, ""sv,
|
||||
std::bind(&CMain::Give, this, std::placeholders::_1, std::placeholders::_2),
|
||||
hecl::SConsoleCommand::ECommandFlags::Cheat);
|
||||
m_console->registerCommand("Remove"sv, "Removes the specified item from the player"sv, ""sv,
|
||||
std::bind(&CMain::Remove, this, std::placeholders::_1, std::placeholders::_2),
|
||||
hecl::SConsoleCommand::ECommandFlags::Cheat);
|
||||
m_console->registerCommand(
|
||||
"Teleport"sv, "Teleports the player to the specified coordinates in worldspace"sv, "x y z [dX dY dZ]"sv,
|
||||
std::bind(&CMain::Teleport, this, std::placeholders::_1, std::placeholders::_2),
|
||||
|
|
|
@ -303,6 +303,7 @@ public:
|
|||
size_t GetExpectedIdSize() const { return sizeof(u32); }
|
||||
void quit(hecl::Console*, const std::vector<std::string>&) { m_doQuit = true; }
|
||||
void Give(hecl::Console*, const std::vector<std::string>&);
|
||||
void Remove(hecl::Console*, const std::vector<std::string>&);
|
||||
void God(hecl::Console*, const std::vector<std::string>&);
|
||||
void Teleport(hecl::Console*, const std::vector<std::string>&);
|
||||
void ListWorlds(hecl::Console*, const std::vector<std::string>&);
|
||||
|
|
Loading…
Reference in New Issue