Fixed infinite ammo.

Refactored SpeedHack to not speed up the entire game if you are the host.
Removed code from ResetStamina that causes a crash if the player doesn't have pals out.
This commit is contained in:
gir489returns 2024-01-30 11:08:05 -05:00
parent 69e5d54b2f
commit d5d8d55186
2 changed files with 10 additions and 31 deletions

View File

@ -253,23 +253,19 @@ void SetFullbright(bool bIsSet)
//
void SpeedHack(float mSpeed)
{
UWorld* pWorld = Config.gWorld;
if (!pWorld)
auto player_controller = Config.GetPalPlayerController();
if (!player_controller)
return;
ULevel* pLevel = pWorld->PersistentLevel;
if (!pLevel)
auto acknowledged_pawn = player_controller->AcknowledgedPawn;
if (!acknowledged_pawn)
return;
AWorldSettings* pWorldSettings = pLevel->WorldSettings;
if (!pWorldSettings)
return;
pWorld->PersistentLevel->WorldSettings->TimeDilation = mSpeed;
// pWorldSettings->TimeDilation = mSpeed;
acknowledged_pawn->CustomTimeDilation = mSpeed;
}
//
void SetDemiGodMode(bool bIsSet)
{
@ -360,24 +356,6 @@ void ResetStamina()
return;
pParams->ResetSP();
// Reset Pal Stamina ??
TArray<APalCharacter*> outPals;
Config.GetTAllPals(&outPals);
DWORD palsSize = outPals.Count();
for (int i = 0; i < palsSize; i++)
{
APalCharacter* cPal = outPals[i];
if (!cPal || cPal->IsA(APalMonsterCharacter::StaticClass()))
continue;
UPalCharacterParameterComponent* pPalParams = pPalCharacter->CharacterParameterComponent;
if (!pPalParams)
return;
pPalParams->ResetSP();
}
}
//

View File

@ -72,8 +72,7 @@ namespace DX11_Base
ImGui::Checkbox("InfStamina", &Config.IsInfStamina);
if (ImGui::Checkbox("InfAmmo", &Config.IsInfinAmmo))
SetInfiniteAmmo(Config.IsInfinAmmo);
ImGui::Checkbox("InfAmmo", &Config.IsInfinAmmo);
ImGui::Checkbox("Godmode", &Config.IsGodMode);
@ -789,5 +788,7 @@ namespace DX11_Base
if (Config.IsGodMode)
SetPlayerHealth(INT_MAX);
SetInfiniteAmmo(Config.IsInfinAmmo);
}
}