Merge pull request #9114 from Pioooooo/infjump-command

Add rcon commands (un)infinite_jump, practice commands /(un)infjump
This commit is contained in:
Dennis Felsing 2024-10-09 20:27:03 +00:00 committed by GitHub
commit 76e7317685
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 44 additions and 0 deletions

View file

@ -2167,6 +2167,13 @@ void CGameContext::ConPracticeJetpack(IConsole::IResult *pResult, void *pUserDat
ConJetpack(pResult, pUserData);
}
void CGameContext::ConPracticeEndlessJump(IConsole::IResult *pResult, void *pUserData)
{
CGameContext *pSelf = (CGameContext *)pUserData;
if(pSelf->GetPracticeCharacter(pResult))
ConEndlessJump(pResult, pUserData);
}
void CGameContext::ConPracticeSetJumps(IConsole::IResult *pResult, void *pUserData)
{
CGameContext *pSelf = (CGameContext *)pUserData;
@ -2209,6 +2216,13 @@ void CGameContext::ConPracticeUnJetpack(IConsole::IResult *pResult, void *pUserD
ConUnJetpack(pResult, pUserData);
}
void CGameContext::ConPracticeUnEndlessJump(IConsole::IResult *pResult, void *pUserData)
{
CGameContext *pSelf = (CGameContext *)pUserData;
if(pSelf->GetPracticeCharacter(pResult))
ConUnEndlessJump(pResult, pUserData);
}
void CGameContext::ConPracticeUnWeapons(IConsole::IResult *pResult, void *pUserData)
{
CGameContext *pSelf = (CGameContext *)pUserData;

View file

@ -277,6 +277,14 @@ void CGameContext::ConJetpack(IConsole::IResult *pResult, void *pUserData)
pChr->SetJetpack(true);
}
void CGameContext::ConEndlessJump(IConsole::IResult *pResult, void *pUserData)
{
CGameContext *pSelf = (CGameContext *)pUserData;
CCharacter *pChr = pSelf->GetPlayerChar(pResult->m_ClientId);
if(pChr)
pChr->SetEndlessJump(true);
}
void CGameContext::ConSetJumps(IConsole::IResult *pResult, void *pUserData)
{
CGameContext *pSelf = (CGameContext *)pUserData;
@ -317,6 +325,14 @@ void CGameContext::ConUnJetpack(IConsole::IResult *pResult, void *pUserData)
pChr->SetJetpack(false);
}
void CGameContext::ConUnEndlessJump(IConsole::IResult *pResult, void *pUserData)
{
CGameContext *pSelf = (CGameContext *)pUserData;
CCharacter *pChr = pSelf->GetPlayerChar(pResult->m_ClientId);
if(pChr)
pChr->SetEndlessJump(false);
}
void CGameContext::ConUnWeapons(IConsole::IResult *pResult, void *pUserData)
{
CGameContext *pSelf = (CGameContext *)pUserData;

View file

@ -161,6 +161,11 @@ void CCharacter::SetJetpack(bool Active)
m_Core.m_Jetpack = Active;
}
void CCharacter::SetEndlessJump(bool Active)
{
m_Core.m_EndlessJump = Active;
}
void CCharacter::SetJumps(int Jumps)
{
m_Core.m_Jumps = Jumps;

View file

@ -48,6 +48,7 @@ public:
void SetWeapon(int W);
void SetJetpack(bool Active);
void SetEndlessJump(bool Active);
void SetJumps(int Jumps);
void SetSolo(bool Solo);
void SetSuper(bool Super);

View file

@ -3692,6 +3692,8 @@ void CGameContext::RegisterDDRaceCommands()
Console()->Register("super", "", CFGFLAG_SERVER | CMDFLAG_TEST, ConSuper, this, "Makes you super");
Console()->Register("unsuper", "", CFGFLAG_SERVER, ConUnSuper, this, "Removes super from you");
Console()->Register("invincible", "?i['0'|'1']", CFGFLAG_SERVER | CMDFLAG_TEST, ConToggleInvincible, this, "Toggles invincible mode");
Console()->Register("infinite_jump", "", CFGFLAG_SERVER | CMDFLAG_TEST, ConEndlessJump, this, "Gives you infinite jump");
Console()->Register("uninfinite_jump", "", CFGFLAG_SERVER | CMDFLAG_TEST, ConUnEndlessJump, this, "Removes infinite jump from you");
Console()->Register("endless_hook", "", CFGFLAG_SERVER | CMDFLAG_TEST, ConEndlessHook, this, "Gives you endless hook");
Console()->Register("unendless_hook", "", CFGFLAG_SERVER | CMDFLAG_TEST, ConUnEndlessHook, this, "Removes endless hook from you");
Console()->Register("solo", "", CFGFLAG_SERVER | CMDFLAG_TEST, ConSolo, this, "Puts you into solo part");
@ -3825,6 +3827,8 @@ void CGameContext::RegisterChatCommands()
Console()->Register("unweapons", "", CFGFLAG_CHAT | CMDFLAG_PRACTICE, ConPracticeUnWeapons, this, "Removes all weapons from you");
Console()->Register("ninja", "", CFGFLAG_CHAT | CMDFLAG_PRACTICE, ConPracticeNinja, this, "Makes you a ninja");
Console()->Register("unninja", "", CFGFLAG_CHAT | CMDFLAG_PRACTICE, ConPracticeUnNinja, this, "Removes ninja from you");
Console()->Register("infjump", "", CFGFLAG_CHAT | CMDFLAG_PRACTICE, ConPracticeEndlessJump, this, "Gives you infinite jump");
Console()->Register("uninfjump", "", CFGFLAG_CHAT | CMDFLAG_PRACTICE, ConPracticeUnEndlessJump, this, "Removes infinite jump from you");
Console()->Register("endless", "", CFGFLAG_CHAT | CMDFLAG_PRACTICE, ConPracticeEndlessHook, this, "Gives you endless hook");
Console()->Register("unendless", "", CFGFLAG_CHAT | CMDFLAG_PRACTICE, ConPracticeUnEndlessHook, this, "Removes endless hook from you");
Console()->Register("invincible", "?i['0'|'1']", CFGFLAG_CHAT | CMDFLAG_PRACTICE, ConPracticeToggleInvincible, this, "Toggles invincible mode");

View file

@ -396,12 +396,14 @@ private:
static void ConGrenade(IConsole::IResult *pResult, void *pUserData);
static void ConLaser(IConsole::IResult *pResult, void *pUserData);
static void ConJetpack(IConsole::IResult *pResult, void *pUserData);
static void ConEndlessJump(IConsole::IResult *pResult, void *pUserData);
static void ConSetJumps(IConsole::IResult *pResult, void *pUserData);
static void ConWeapons(IConsole::IResult *pResult, void *pUserData);
static void ConUnShotgun(IConsole::IResult *pResult, void *pUserData);
static void ConUnGrenade(IConsole::IResult *pResult, void *pUserData);
static void ConUnLaser(IConsole::IResult *pResult, void *pUserData);
static void ConUnJetpack(IConsole::IResult *pResult, void *pUserData);
static void ConUnEndlessJump(IConsole::IResult *pResult, void *pUserData);
static void ConUnWeapons(IConsole::IResult *pResult, void *pUserData);
static void ConAddWeapon(IConsole::IResult *pResult, void *pUserData);
static void ConRemoveWeapon(IConsole::IResult *pResult, void *pUserData);
@ -488,12 +490,14 @@ private:
static void ConPracticeGrenade(IConsole::IResult *pResult, void *pUserData);
static void ConPracticeLaser(IConsole::IResult *pResult, void *pUserData);
static void ConPracticeJetpack(IConsole::IResult *pResult, void *pUserData);
static void ConPracticeEndlessJump(IConsole::IResult *pResult, void *pUserData);
static void ConPracticeSetJumps(IConsole::IResult *pResult, void *pUserData);
static void ConPracticeWeapons(IConsole::IResult *pResult, void *pUserData);
static void ConPracticeUnShotgun(IConsole::IResult *pResult, void *pUserData);
static void ConPracticeUnGrenade(IConsole::IResult *pResult, void *pUserData);
static void ConPracticeUnLaser(IConsole::IResult *pResult, void *pUserData);
static void ConPracticeUnJetpack(IConsole::IResult *pResult, void *pUserData);
static void ConPracticeUnEndlessJump(IConsole::IResult *pResult, void *pUserData);
static void ConPracticeUnWeapons(IConsole::IResult *pResult, void *pUserData);
static void ConPracticeNinja(IConsole::IResult *pResult, void *pUserData);
static void ConPracticeUnNinja(IConsole::IResult *pResult, void *pUserData);