mirror of
https://github.com/Milxnor/Project-Reboot-3.0.git
synced 2026-01-13 02:42: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);
|
||||
|
||||
if (DynamicFoundationTypeOffset != -1)
|
||||
bool bChangeDynamicFoundationType = Fortnite_Version < 13;
|
||||
|
||||
if (DynamicFoundationTypeOffset != -1 && bChangeDynamicFoundationType)
|
||||
{
|
||||
BuildingFoundation->Get<uint8_t>(DynamicFoundationTypeOffset) = bShow ? Static : StartDisabled;
|
||||
}
|
||||
|
||||
/* static auto bShowHLODWhenDisabledOffset = BuildingFoundation->GetOffset("bShowHLODWhenDisabled", false);
|
||||
|
||||
@@ -272,4 +276,4 @@ public:
|
||||
static int Athena_PickTeamHook(AFortGameModeAthena* GameMode, uint8 preferredTeam, AActor* Controller);
|
||||
static void Athena_HandleStartingNewPlayerHook(AFortGameModeAthena* GameMode, AActor* NewPlayerActor);
|
||||
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());
|
||||
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; };
|
||||
@@ -949,4 +1018,4 @@ If you want to execute a command on a certain player, surround their name (case
|
||||
|
||||
SendMessageToConsole(PlayerController, HelpMessage);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -462,17 +462,17 @@ DWORD WINAPI Main(LPVOID)
|
||||
|
||||
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"),
|
||||
FindObject<UFunction>(L"/Script/FortniteGame.BuildingFoundation.SetDynamicFoundationTransform"),
|
||||
ABuildingFoundation::SetDynamicFoundationTransformHook, (PVOID*)&ABuildingFoundation::SetDynamicFoundationTransformOriginal, 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);
|
||||
}
|
||||
|
||||
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
|
||||
|
||||
Reference in New Issue
Block a user