mirror of
https://github.com/swordbluesword/PalWorld-NetCrack.git
synced 2025-04-29 02:47:17 +09:00
SDK - Changed TArray function name "Num" to "Count" for clarity CONFIG - included additional helper functions FEATURE - General cleanup - Include features as functions NOTES: - new feature functions have not been implemented ~squish-- Update feature.h - forgot to include function declarations
149 lines
3.5 KiB
C++
149 lines
3.5 KiB
C++
#include "pch.h"
|
|
#include "feature.h"
|
|
using namespace SDK;
|
|
|
|
void ESP()
|
|
{
|
|
APalPlayerCharacter* pPalCharacter = Config.GetPalPlayerCharacter();
|
|
if (!pPalCharacter)
|
|
return;
|
|
|
|
UPalShooterComponent* pShootComponent = pPalCharacter->ShooterComponent;
|
|
if (!pShootComponent)
|
|
return;
|
|
|
|
APalWeaponBase* pWeapon = pShootComponent->HasWeapon;
|
|
if (pWeapon)
|
|
DrawUActorComponent(pWeapon->InstanceComponents, ImColor(128, 0, 0));
|
|
|
|
if (!Config.UCIM)
|
|
return;
|
|
|
|
TArray<SDK::APalCharacter*> T = {};
|
|
Config.UCIM->GetAllPalCharacter(&T);
|
|
if (!T.IsValid())
|
|
return;
|
|
|
|
for (int i = 0; i < T.Count(); i++)
|
|
ImGui::GetBackgroundDrawList()->AddText(nullptr, 16, ImVec2(10, 10 + (i * 30)), ImColor(128,0,0), T[i]->GetFullName().c_str());
|
|
}
|
|
|
|
void DrawUActorComponent(SDK::TArray<SDK::UActorComponent*> Comps,ImColor color)
|
|
{
|
|
ImGui::GetBackgroundDrawList()->AddText(nullptr, 16, ImVec2(ImGui::GetIO().DisplaySize.x / 2, ImGui::GetIO().DisplaySize.y / 2), color, "Drawing...");
|
|
if (Comps.IsValid())
|
|
{
|
|
for (int i = 0; i < Comps.Count(); i++)
|
|
{
|
|
|
|
if (Comps[i] != NULL)
|
|
{
|
|
|
|
ImGui::GetBackgroundDrawList()->AddText(nullptr, 16, ImVec2(10, 10 + (i * 30)), color, Comps[i]->GetFullName().c_str());
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
void ResetStamina()
|
|
{
|
|
APalPlayerCharacter* pPalCharacter = Config.GetPalPlayerCharacter();
|
|
if (!pPalCharacter)
|
|
return;
|
|
|
|
UPalCharacterParameterComponent* pParams = pPalCharacter->CharacterParameterComponent;
|
|
if (!pParams)
|
|
return;
|
|
|
|
pParams->ResetSP();
|
|
}
|
|
|
|
void SetInfiniteAmmo(bool bInfAmmo)
|
|
{
|
|
APalPlayerCharacter* pPalCharacter = Config.GetPalPlayerCharacter();
|
|
if (!pPalCharacter)
|
|
return;
|
|
|
|
UPalShooterComponent* pShootComponent = pPalCharacter->ShooterComponent;
|
|
if (!pShootComponent)
|
|
return;
|
|
|
|
APalWeaponBase* pWeapon = pShootComponent->HasWeapon;
|
|
if (pWeapon)
|
|
pWeapon->IsRequiredBullet = bInfAmmo ? false : true;
|
|
|
|
}
|
|
|
|
void SetCraftingSpeed(float mNewSpeed, bool bRestoreDefault = false)
|
|
{
|
|
APalPlayerCharacter* pPalCharacter = Config.GetPalPlayerCharacter();
|
|
if (!pPalCharacter)
|
|
return;
|
|
|
|
UPalCharacterParameterComponent* pParams = pPalCharacter->CharacterParameterComponent;
|
|
if (!pParams)
|
|
return;
|
|
|
|
UPalIndividualCharacterParameter* ivParams = pParams->IndividualParameter;
|
|
if (!ivParams)
|
|
return;
|
|
|
|
FPalIndividualCharacterSaveParameter sParams = ivParams->SaveParameter;
|
|
TArray<FFloatContainer_FloatPair> mCraftSpeedArray = sParams.CraftSpeedRates.Values;
|
|
|
|
if (mCraftSpeedArray.Count() > 0)
|
|
mCraftSpeedArray[0].Value = bRestoreDefault ? 1.0f : mNewSpeed;
|
|
}
|
|
|
|
void AddTechPoints(__int32 mPoints)
|
|
{
|
|
APalPlayerState* mPlayerState = Config.GetPalPlayerState();
|
|
if (!mPlayerState)
|
|
return;
|
|
|
|
UPalTechnologyData* pTechData = mPlayerState->TechnologyData;
|
|
if (!pTechData)
|
|
return;
|
|
|
|
pTechData->TechnologyPoint += mPoints;
|
|
}
|
|
|
|
void AddAncientTechPoints(__int32 mPoints)
|
|
{
|
|
APalPlayerState* mPlayerState = Config.GetPalPlayerState();
|
|
if (!mPlayerState)
|
|
return;
|
|
|
|
UPalTechnologyData* pTechData = mPlayerState->TechnologyData;
|
|
if (!pTechData)
|
|
return;
|
|
|
|
pTechData->bossTechnologyPoint += mPoints;
|
|
}
|
|
|
|
void RemoveTechPoints(__int32 mPoints)
|
|
{
|
|
APalPlayerState* mPlayerState = Config.GetPalPlayerState();
|
|
if (!mPlayerState)
|
|
return;
|
|
|
|
UPalTechnologyData* pTechData = mPlayerState->TechnologyData;
|
|
if (!pTechData)
|
|
return;
|
|
|
|
pTechData->TechnologyPoint -= mPoints;
|
|
}
|
|
|
|
void RemoveAncientTechPoint(__int32 mPoints)
|
|
{
|
|
APalPlayerState* mPlayerState = Config.GetPalPlayerState();
|
|
if (!mPlayerState)
|
|
return;
|
|
|
|
UPalTechnologyData* pTechData = mPlayerState->TechnologyData;
|
|
if (!pTechData)
|
|
return;
|
|
|
|
pTechData->bossTechnologyPoint -= mPoints;
|
|
} |