mirror of
https://github.com/Milxnor/Project-Reboot-3.0.git
synced 2026-01-13 02:42:22 +01:00
edit thing
This commit is contained in:
@@ -55,7 +55,7 @@ public:
|
|||||||
)
|
)
|
||||||
{
|
{
|
||||||
SetNetDormancy((ENetDormancy)(2 - (NewEditingPlayer != 0)));
|
SetNetDormancy((ENetDormancy)(2 - (NewEditingPlayer != 0)));
|
||||||
// they do something here
|
this->ForceNetUpdate();
|
||||||
GetEditingPlayer() = NewEditingPlayer;
|
GetEditingPlayer() = NewEditingPlayer;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,5 +22,14 @@ public:
|
|||||||
|
|
||||||
void OnRep_EditActor();
|
void OnRep_EditActor();
|
||||||
|
|
||||||
|
void SetEditActor(ABuildingSMActor* EditActor)
|
||||||
|
{
|
||||||
|
// if (HasAuthority())
|
||||||
|
{
|
||||||
|
GetEditActor() = EditActor;
|
||||||
|
OnRep_EditActor();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static UClass* StaticClass();
|
static UClass* StaticClass();
|
||||||
};
|
};
|
||||||
@@ -1694,8 +1694,7 @@ void AFortPlayerController::ServerBeginEditingBuildingActorHook(AFortPlayerContr
|
|||||||
if (!EditTool)
|
if (!EditTool)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
EditTool->GetEditActor() = BuildingActorToEdit;
|
EditTool->SetEditActor(BuildingActorToEdit);
|
||||||
EditTool->OnRep_EditActor();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void AFortPlayerController::ServerEditBuildingActorHook(UObject* Context, FFrame& Stack, void* Ret)
|
void AFortPlayerController::ServerEditBuildingActorHook(UObject* Context, FFrame& Stack, void* Ret)
|
||||||
@@ -1762,21 +1761,17 @@ void AFortPlayerController::ServerEndEditingBuildingActorHook(AFortPlayerControl
|
|||||||
if (!WorldInventory)
|
if (!WorldInventory)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
BuildingActorToStopEditing->SetEditingPlayer(nullptr);
|
||||||
|
|
||||||
auto EditToolInstance = WorldInventory->FindItemInstance(EditToolDef);
|
auto EditToolInstance = WorldInventory->FindItemInstance(EditToolDef);
|
||||||
|
|
||||||
if (!EditToolInstance)
|
if (!EditToolInstance)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
Pawn->EquipWeaponDefinition(EditToolDef, EditToolInstance->GetItemEntry()->GetItemGuid());
|
// Pawn->EquipWeaponDefinition(EditToolDef, EditToolInstance->GetItemEntry()->GetItemGuid()); // ERM
|
||||||
|
|
||||||
auto EditTool = Cast<AFortWeap_EditingTool>(Pawn->GetCurrentWeapon());
|
if (auto EditTool = Cast<AFortWeap_EditingTool>(Pawn->GetCurrentWeapon()))
|
||||||
|
|
||||||
BuildingActorToStopEditing->GetEditingPlayer() = nullptr;
|
|
||||||
// BuildingActorToStopEditing->OnRep_EditingPlayer();
|
|
||||||
|
|
||||||
if (EditTool)
|
|
||||||
{
|
{
|
||||||
EditTool->GetEditActor() = nullptr;
|
EditTool->SetEditActor(nullptr);
|
||||||
EditTool->OnRep_EditActor();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -583,8 +583,13 @@ std::vector<uint64> Addresses::GetFunctionsToNull()
|
|||||||
toNull.push_back(Memcury::Scanner::FindStringRef(L"Widget Class %s - Running Initialize On Archetype, %s.").ScanFor({ 0x40, 0x55 }, false).Get()); // Widget class
|
toNull.push_back(Memcury::Scanner::FindStringRef(L"Widget Class %s - Running Initialize On Archetype, %s.").ScanFor({ 0x40, 0x55 }, false).Get()); // Widget class
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Engine_Version == 422)
|
if (Engine_Version == 422
|
||||||
|
|| Engine_Version == 423
|
||||||
|
|| Engine_Version == 424 // guessed
|
||||||
|
)
|
||||||
{
|
{
|
||||||
|
// This sig is valid on 7.40, 8.51, 11.31 (3 refs), but on 12.41 it has 1 ref which isn't widget class
|
||||||
|
// Also this isn't the actual function but something the widget class thing calls
|
||||||
toNull.push_back(Memcury::Scanner::FindPattern("48 89 5C 24 ? 57 48 83 EC 30 48 8B 41 28 48 8B DA 48 8B F9 48 85 C0 74 34 48 8B 4B 08 48 8D").Get()); // widget class
|
toNull.push_back(Memcury::Scanner::FindPattern("48 89 5C 24 ? 57 48 83 EC 30 48 8B 41 28 48 8B DA 48 8B F9 48 85 C0 74 34 48 8B 4B 08 48 8D").Get()); // widget class
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user