mirror of
https://github.com/Milxnor/Project-Reboot-3.0.git
synced 2026-01-13 10:52:22 +01:00
sync latest code without "project z1k" 💀
This commit is contained in:
@@ -121,8 +121,12 @@ static void ShowFoundation(AActor* BuildingFoundation, bool bShow = true)
|
|||||||
|
|
||||||
static auto DynamicFoundationTypeOffset = BuildingFoundation->GetOffset("DynamicFoundationType", false);
|
static auto DynamicFoundationTypeOffset = BuildingFoundation->GetOffset("DynamicFoundationType", false);
|
||||||
|
|
||||||
if (DynamicFoundationTypeOffset != -1)
|
bool bChangeDynamicFoundationType = Fortnite_Version < 13;
|
||||||
|
|
||||||
|
if (DynamicFoundationTypeOffset != -1 && bChangeDynamicFoundationType)
|
||||||
|
{
|
||||||
BuildingFoundation->Get<uint8_t>(DynamicFoundationTypeOffset) = bShow ? Static : StartDisabled;
|
BuildingFoundation->Get<uint8_t>(DynamicFoundationTypeOffset) = bShow ? Static : StartDisabled;
|
||||||
|
}
|
||||||
|
|
||||||
/* static auto bShowHLODWhenDisabledOffset = BuildingFoundation->GetOffset("bShowHLODWhenDisabled", false);
|
/* static auto bShowHLODWhenDisabledOffset = BuildingFoundation->GetOffset("bShowHLODWhenDisabled", false);
|
||||||
|
|
||||||
@@ -272,4 +276,4 @@ public:
|
|||||||
static int Athena_PickTeamHook(AFortGameModeAthena* GameMode, uint8 preferredTeam, AActor* Controller);
|
static int Athena_PickTeamHook(AFortGameModeAthena* GameMode, uint8 preferredTeam, AActor* Controller);
|
||||||
static void Athena_HandleStartingNewPlayerHook(AFortGameModeAthena* GameMode, AActor* NewPlayerActor);
|
static void Athena_HandleStartingNewPlayerHook(AFortGameModeAthena* GameMode, AActor* NewPlayerActor);
|
||||||
static void SetZoneToIndexHook(AFortGameModeAthena* GameModeAthena, int OverridePhaseMaybeIDFK);
|
static void SetZoneToIndexHook(AFortGameModeAthena* GameModeAthena, int OverridePhaseMaybeIDFK);
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -919,6 +919,75 @@ void ServerCheatHook(AFortPlayerControllerAthena* PlayerController, FString Msg)
|
|||||||
Pawn->TeleportTo(FVector(X, Y, Z), Pawn->GetActorRotation());
|
Pawn->TeleportTo(FVector(X, Y, Z), Pawn->GetActorRotation());
|
||||||
SendMessageToConsole(PlayerController, L"Teleported!");
|
SendMessageToConsole(PlayerController, L"Teleported!");
|
||||||
}
|
}
|
||||||
|
else if (Command == "fly")
|
||||||
|
{
|
||||||
|
auto Pawn = Cast<APawn>(ReceivingController->GetPawn());
|
||||||
|
|
||||||
|
if (!Pawn)
|
||||||
|
{
|
||||||
|
SendMessageToConsole(PlayerController, L"No pawn found!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
static auto CharMovementOffset = Pawn->GetOffset("CharacterMovement");
|
||||||
|
if (CharMovementOffset != -1)
|
||||||
|
{
|
||||||
|
auto CharMovement = Pawn->Get<UObject*>(CharMovementOffset);
|
||||||
|
|
||||||
|
static auto MovementOffset = CharMovement->GetOffset("MovementMode", false);
|
||||||
|
if (MovementOffset != -1)
|
||||||
|
{
|
||||||
|
uint8_t MovementMode = CharMovement->Get<uint8_t>(MovementOffset);
|
||||||
|
static auto SetMovementModeFn = FindObject<UFunction>(L"/Script/Engine.CharacterMovementComponent.SetMovementMode");
|
||||||
|
uint8_t NewMode = 1;
|
||||||
|
if (MovementMode != 5)
|
||||||
|
{
|
||||||
|
NewMode = 5;
|
||||||
|
}
|
||||||
|
if (SetMovementModeFn)
|
||||||
|
{
|
||||||
|
CharMovement->ProcessEvent(SetMovementModeFn, &NewMode);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
SendMessageToConsole(PlayerController, L"Movement mode not found!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
SendMessageToConsole(PlayerController, L"Character movement not found!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (Command == "setspeed")
|
||||||
|
{
|
||||||
|
float Speed = 1.0f;
|
||||||
|
|
||||||
|
if (Arguments.size() > 1 && Arguments[1] != " ")
|
||||||
|
{
|
||||||
|
try { Speed = std::stof(Arguments[1]); }
|
||||||
|
catch (...) {}
|
||||||
|
}
|
||||||
|
|
||||||
|
auto Pawn = Cast<APawn>(ReceivingController->GetPawn());
|
||||||
|
|
||||||
|
if (!Pawn)
|
||||||
|
{
|
||||||
|
SendMessageToConsole(PlayerController, L"No pawn to set speed!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
static auto SetMovementSpeedFn = FindObject<UFunction>(L"/Script/FortniteGame.FortPawn.SetMovementSpeed");
|
||||||
|
SetMovementSpeedFn = SetMovementSpeedFn ? SetMovementSpeedFn : FindObject<UFunction>(L"/Script/FortniteGame.FortPawn.SetMovementSpeedMultiplier"); // extremely clean code that totally works
|
||||||
|
if (!SetMovementSpeedFn)
|
||||||
|
{
|
||||||
|
SendMessageToConsole(PlayerController, L"Function not found!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Pawn->ProcessEvent(SetMovementSpeedFn, &Speed);
|
||||||
|
}
|
||||||
else { bSendHelpMessage = true; };
|
else { bSendHelpMessage = true; };
|
||||||
}
|
}
|
||||||
else { bSendHelpMessage = true; };
|
else { bSendHelpMessage = true; };
|
||||||
@@ -949,4 +1018,4 @@ If you want to execute a command on a certain player, surround their name (case
|
|||||||
|
|
||||||
SendMessageToConsole(PlayerController, HelpMessage);
|
SendMessageToConsole(PlayerController, HelpMessage);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -462,17 +462,17 @@ DWORD WINAPI Main(LPVOID)
|
|||||||
|
|
||||||
Hooking::MinHook::Hook((PVOID)Addresses::ActorGetNetMode, (PVOID)GetNetModeHook2, nullptr);
|
Hooking::MinHook::Hook((PVOID)Addresses::ActorGetNetMode, (PVOID)GetNetModeHook2, nullptr);
|
||||||
|
|
||||||
/*
|
if (Fortnite_Version > 13) // ermm
|
||||||
|
{
|
||||||
|
Hooking::MinHook::Hook(FindObject<ABuildingFoundation>(L"/Script/FortniteGame.Default__BuildingFoundation"),
|
||||||
|
FindObject<UFunction>(L"/Script/FortniteGame.BuildingFoundation.SetDynamicFoundationTransform"),
|
||||||
|
ABuildingFoundation::SetDynamicFoundationTransformHook, (PVOID*)&ABuildingFoundation::SetDynamicFoundationTransformOriginal, false, true);
|
||||||
|
|
||||||
Hooking::MinHook::Hook(FindObject<ABuildingFoundation>(L"/Script/FortniteGame.Default__BuildingFoundation"),
|
Hooking::MinHook::Hook(FindObject<ABuildingFoundation>(L"/Script/FortniteGame.Default__BuildingFoundation"),
|
||||||
FindObject<UFunction>(L"/Script/FortniteGame.BuildingFoundation.SetDynamicFoundationTransform"),
|
FindObject<UFunction>(L"/Script/FortniteGame.BuildingFoundation.SetDynamicFoundationEnabled"),
|
||||||
ABuildingFoundation::SetDynamicFoundationTransformHook, (PVOID*)&ABuildingFoundation::SetDynamicFoundationTransformOriginal, false, true);
|
ABuildingFoundation::SetDynamicFoundationEnabledHook, (PVOID*)&ABuildingFoundation::SetDynamicFoundationEnabledOriginal, false, true);
|
||||||
|
}
|
||||||
|
|
||||||
Hooking::MinHook::Hook(FindObject<ABuildingFoundation>(L"/Script/FortniteGame.Default__BuildingFoundation"),
|
|
||||||
FindObject<UFunction>(L"/Script/FortniteGame.BuildingFoundation.SetDynamicFoundationEnabled"),
|
|
||||||
ABuildingFoundation::SetDynamicFoundationEnabledHook, (PVOID*)&ABuildingFoundation::SetDynamicFoundationEnabledOriginal, false, true);
|
|
||||||
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
if (Fortnite_Version == 6.21) // ur trolling
|
if (Fortnite_Version == 6.21) // ur trolling
|
||||||
|
|||||||
Reference in New Issue
Block a user