void GetObjectTypesToDropBlock (TArray<EObjectTypeQuery > & ObjectTypesToBlock ) Script3 statements · 35 bytes of bytecode 0x0000 ObjectTypesToBlock = {};0x0020 return;Public 0x1495c50 0x10 void GetVehicleLockComponent (const USceneComponent * & LockComponent ) Script3 statements · 14 bytes of bytecode 0x0000 LockComponent = nullptr;0x000B return;Public 0x1495c50 0x08 void DisablePushRouting (const bool & bDisable ) Script3 statements · 14 bytes of bytecode 0x0000 bDisable = false;0x000B return;Public 0x1495c50 0x01 void GetRideableSteeringInput (const bool & Success , const double & Steering ) Script4 statements · 41 bytes of bytecode 0x0000 Success = false;0x000B Steering = 0;0x0026 return;Public 0x1495c50 0x10 void AllowsHeldObjectInteraction (ABP_FirstPersonCharacter_C * Player , AActor * HeldItem , const FHitResult & HitResult , const bool & Result ) Script3 statements · 14 bytes of bytecode 0x0000 Result = false;0x000B return;Public 0x1495c50 0x111 void TeleportByRocket (AActor * Rocket , const FVector & NewLocation , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x21 void CanBeTeleportedByRocket (const bool & Result , const FVector & ActorLocation ) Script4 statements · 57 bytes of bytecode 0x0000 Result = false;0x000B ActorLocation = FVector(0, 0, 0);0x0036 return;Public 0x1495c50 0x20 void SetInsideRV (bool InsideRV , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x02 void CanBeNailed (const bool & CanBeNailed , const bool & CanBeNailAnchor ) Script4 statements · 25 bytes of bytecode 0x0000 CanBeNailed = false;0x000B CanBeNailAnchor = false;0x0016 return;Public 0x1495c50 0x02 void SetFastenedPhysicsState (const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x01 void RemoveNail (AActor * Nail , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x09 void AddNail (AActor * Nail , const FTransform & NailedActorTransform , AActor * OtherNailedActor , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x79 void EnableRideableInput (bool EnableInput , ABP_FirstPersonPlayerController_C * PlayerController , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x11 void GetRideableAttachmentPoint (ARGFirstPersonCharacter * Player , const USceneComponent * & AttachmentPoint , const FVector & AttachmentOffset , const bool & SetRotationToWorld ) Script5 statements · 68 bytes of bytecode 0x0000 AttachmentPoint = nullptr;0x000B AttachmentOffset = FVector(0, 0, 0);0x0036 SetRotationToWorld = false;0x0041 return;Public 0x1495c50 0x29 void IsRideable (const bool & IsRideable , const ECharSeatType & SeatType , const bool & MultiSeat ) Script5 statements · 45 bytes of bytecode 0x0000 IsRideable = false;0x000B SeatType = 0;0x001F MultiSeat = false;0x002A return;Public 0x1495c50 0x03 void GetAttachedToPlayerInteractionTexts (TMap<UInputAction *, FText> & PickedUpPlayerInteractions ) Script3 statements · 43 bytes of bytecode 0x0000 PickedUpPlayerInteractions = TMap{};0x0028 return;Public 0x1495c50 0x50 void GetPickedUpPlayerInteractionTexts (TMap<UInputAction *, FText> & PickedUpPlayerInteractions , const UInputMappingContext * & IMC ) Script4 statements · 54 bytes of bytecode 0x0000 PickedUpPlayerInteractions = TMap{};0x0028 IMC = nullptr;0x0033 return;Public 0x1495c50 0x58 void GetLookAtPlayerInteractionTexts (ARGFirstPersonCharacter * InstigatingPlayer , AActor * InstigatingPlayerHeldActor , const FHitResult & Hit , TMap<UInputAction *, FText> & LookAtPlayerInteractionTexts ) Script3 statements · 43 bytes of bytecode 0x0000 LookAtPlayerInteractionTexts = TMap{};0x0028 return;Public 0x1495c50 0x160 void GetCustomCrosshair (const bool & UseCustomBrush , FSlateBrush & Brush ) Script4 statements · 381 bytes of bytecode 0x0000 UseCustomBrush = false;0x000B Brush = SlateBrush{SlateColor{LinearColor{1f, 1f, 1f, 1f}, 0}, 3, 0, 0, 0, DeprecateSlateVector2D{32f, 32f}, Margin{0f, 0f, 0f, 0f}, nullptr, SlateBrushOutlineSettings{Vector4{0, 0, 0, 0}, SlateColor{LinearColor{0f, 0f, 0f, 0f}, 0}, 0f, 1, false}, Box2f{Vector2f{0f, 0f}, Vector2f{0f, 0f}, false}, false, false, FName(None)};0x017A return;Public 0x1495c50 0xC0 void IsAttachPointBlocking (UObject * PickUpObject , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x09 void PlaceActor (const FTransform & PlacementTransform , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x61 void AddImpulseAtLocation (const FVector & ImpulseStrength , const FVector & Location , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x31 void IsPickupable (const bool & IsPickupable ) Script3 statements · 14 bytes of bytecode 0x0000 IsPickupable = false;0x000B return;Public 0x1495c50 0x01 void ShouldUseHoldTransform (const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x01 void GetDisplayName (ARGFirstPersonCharacter * Player , const bool & Success , FText & DisplayName ) Script4 statements · 34 bytes of bytecode 0x0000 Success = false;0x000B DisplayName = FText();0x001F return;Public 0x1495c50 0x20 void SecondaryInteract (ABP_FirstPersonCharacter_C * InstigatingPlayer , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x09 void AddImpulse (const FVector & ImpulseStrength , UObject * Instigator , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x21 void BlockInteraction (ABP_FirstPersonCharacter_C * Player , const bool & BlockInteraction ) Script3 statements · 14 bytes of bytecode 0x0000 BlockInteraction = false;0x000B return;Public 0x1495c50 0x09 void Interact (ABP_FirstPersonCharacter_C * PlayerCharacter , const FHitResult & HitResult , double HoldTime , bool NewParam , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x112 void GetPhysicsMesh (const bool & Success , const UPrimitiveComponent * & PrimitiveComponent ) Script4 statements · 25 bytes of bytecode 0x0000 Success = false;0x000B PrimitiveComponent = nullptr;0x0016 return;Public 0x1495c50 0x10 void SetPickedUpPhysicsState (const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x01 void SetDroppedPhysicsState (const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x01 void GetCustomHoldTransform (const bool & Success , FTransform & Transform ) Script4 statements · 113 bytes of bytecode 0x0000 Success = false;0x000B Transform = FTransform(...);0x006E return;Public 0x1495c50 0x70 void SetAttachedPhysicsState (const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x01 void AttachByPlayer (AActor * Parent , const FTransform & RelativeTransform , ABP_FirstPersonCharacter_C * PlayerAttaching , const FName & SocketName , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x81 void ForceAttach (AActor * Parent , const FTransform & RelativeTransform , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x71 void ForceDetach (bool Destroy , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x02 void Hit (AActor * ActorHitting , const FHitResult & Hit , const FVector & ImpulseVector , const FST_Damage_Results & DamageResults , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x131 void CanPickUpObjectBeAttachedToLookAtObject (UObject * PickUpObject , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x09 void GetObjectAttachType (const bool & Success , FGameplayTagContainer & AttachType ) Script4 statements · 60 bytes of bytecode 0x0000 Success = false;0x000B AttachType = GameplayTagContainer{{}};0x0039 return;Public 0x1495c50 0x28 void SetAttachPointState (const FGameplayTag & AttachPointState , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x09 void GetAttachPointState (const bool & Success , FGameplayTag & AttachPointState ) Script4 statements · 59 bytes of bytecode 0x0000 Success = false;0x000B AttachPointState = GameplayTag{FName(None)};0x0038 return;Public 0x1495c50 0x0C void GetCustomAttachComponent (const bool & Success , const USceneComponent * & CustomAttachComponent ) Script4 statements · 25 bytes of bytecode 0x0000 Success = false;0x000B CustomAttachComponent = nullptr;0x0016 return;Public 0x1495c50 0x10 void GetCustomAttachTransform (AActor * AttachParent , const bool & Success , FTransform & CustomAttachTransform ) Script4 statements · 113 bytes of bytecode 0x0000 Success = false;0x000B CustomAttachTransform = FTransform(...);0x006E return;Public 0x1495c50 0x70 void SetNewAttachTransform (const FTransform & NewTransform , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x61 void GetCharacterPose (const bool & Success , const E_CharacterPose & CharacterPose , const UAnimSequenceBase * & CharacterPoseAnim ) Script5 statements · 45 bytes of bytecode 0x0000 Success = false;0x000B CharacterPose = 0;0x001F CharacterPoseAnim = nullptr;0x002A return;Public 0x1495c50 0x10 void Explode (const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x01 void GetThirdPersonDummyClass (const TSubclassOf<ABP_ThirdPersonDummy_C > & ThirdPersonDummyClass ) Script3 statements · 14 bytes of bytecode 0x0000 ThirdPersonDummyClass = nullptr;0x000B return;Public 0x1495c50 0x08 void GetVisuals (const UStaticMesh * & Mesh , const UMaterialInstanceDynamic * & DynamicMaterial ) Script4 statements · 25 bytes of bytecode 0x0000 Mesh = nullptr;0x000B DynamicMaterial = nullptr;0x0016 return;Public 0x1495c50 0x10 void GetAttachOffset (FTransform & FPPOffset , FTransform & TPPOffset , const bool & Success ) Script5 statements · 212 bytes of bytecode 0x0000 FPPOffset = FTransform(...);0x0063 TPPOffset = FTransform(...);0x00C6 Success = false;0x00D1 return;Public 0x1495c50 0xC1 void GetAcceptedDamageTypes (const bool & Success , FGameplayTagContainer & AcceptedDamageTypes ) Script4 statements · 60 bytes of bytecode 0x0000 Success = false;0x000B AcceptedDamageTypes = GameplayTagContainer{{}};0x0039 return;Public 0x1495c50 0x28 void Repair (AActor * RepairTarget , ABP_Interactable_Actor_C * RepairTool , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x11 void StopInteract (ABP_FirstPersonCharacter_C * PlayerCharacter , const FHitResult & HitResult , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x1495c50 0x109 void OnScrewAmountUpdated () Script2 statements · 3 bytes of bytecode Public 0x1495c50 0x00 void ClearTimers () Script9 statements · 155 bytes of bytecode 0x0000 CallFunc_K2_IsTimerActiveHandle_ReturnValue = K2_IsTimerActiveHandle(this, ScrewInTimer);0x001E CallFunc_K2_IsTimerActiveHandle_ReturnValue_1 = K2_IsTimerActiveHandle(this, ScrewOutTimer);0x003C CallFunc_BooleanOR_ReturnValue = BooleanOR(CallFunc_K2_IsTimerActiveHandle_ReturnValue_1, CallFunc_K2_IsTimerActiveHandle_ReturnValue);0x0062 if (!(CallFunc_BooleanOR_ReturnValue)) goto Label_0098;0x0070 K2_ClearAndInvalidateTimerHandle(this, ScrewOutTimer);0x0084 K2_ClearAndInvalidateTimerHandle(this, ScrewInTimer);0x0098 Label_0098:0x0098 return;Public 0x1495c50 0x00 void OnRep_ScrewAmount () Script18 statements · 328 bytes of bytecode 0x0000 OnScrewAmountUpdated();0x000E ScrewAmountVisual = ScrewAmount;0x0029 Internal_UpdateScrewVisuals();0x0037 CallFunc_IsServer_ReturnValue = IsServer(this);0x004C if (!(CallFunc_IsServer_ReturnValue)) goto Label_0145;0x005A CallFunc_IsValid_ReturnValue = IsValid(Wheel);0x0077 if (!(CallFunc_IsValid_ReturnValue)) goto Label_0145;0x0085 CallFunc_EqualEqual_DoubleDouble_ReturnValue_1 = EqualEqual_DoubleDouble(ScrewAmount, 0);0x00AB if (!(CallFunc_EqualEqual_DoubleDouble_ReturnValue_1)) goto Label_00E3;0x00B9 Wheel.ScrewedOut(this);0x00DE goto Label_0145;0x00E3 Label_00E3:0x00E3 CallFunc_EqualEqual_DoubleDouble_ReturnValue = EqualEqual_DoubleDouble(ScrewAmount, 1);0x0109 if (!(CallFunc_EqualEqual_DoubleDouble_ReturnValue)) goto Label_0145;0x0117 Wheel.ScrewedIn(this, ScrewingPlayer);0x0145 Label_0145:0x0145 return;0x1495c50 0x00 void Internal_UpdateScrewVisuals () Script19 statements · 646 bytes of bytecode 0x0000 CallFunc_VLerp_Alpha_ImplicitCast = Cast<3>(ScrewAmountVisual);0x001D CallFunc_VLerp_ReturnValue_1 = VLerp(FVector(2.176147, 0, 0), FVector(-5.678588, 0, 0), CallFunc_VLerp_Alpha_ImplicitCast);0x0074 Screw.K2_SetRelativeLocation(CallFunc_VLerp_ReturnValue_1, false, CallFunc_K2_SetRelativeLocation_SweepHitResult_1, false);0x00A8 CallFunc_VLerp_Alpha_ImplicitCast_1 = Cast<3>(ScrewAmountVisual);0x00C5 CallFunc_VLerp_ReturnValue = VLerp(FVector(20, 0, 0), FVector(5, 0, 0), CallFunc_VLerp_Alpha_ImplicitCast_1);0x011C DrillPoint.K2_SetRelativeLocation(CallFunc_VLerp_ReturnValue, false, CallFunc_K2_SetRelativeLocation_SweepHitResult, false);0x0150 CallFunc_GreaterEqual_DoubleDouble_ReturnValue = GreaterEqual_DoubleDouble(ScrewAmountVisual, 1);0x0176 CallFunc_LessEqual_DoubleDouble_ReturnValue = LessEqual_DoubleDouble(ScrewAmountVisual, 0);0x019C CallFunc_BooleanOR_ReturnValue = BooleanOR(CallFunc_LessEqual_DoubleDouble_ReturnValue, CallFunc_GreaterEqual_DoubleDouble_ReturnValue);0x01C2 if (!(CallFunc_BooleanOR_ReturnValue)) goto Label_01D5;0x01D0 goto Label_0283;0x01D5 Label_01D5:0x01D5 CallFunc_Multiply_DoubleDouble_ReturnValue = Multiply_DoubleDouble(ScrewAmountVisual, 100);0x0203 CallFunc_MakeRotator_Yaw_ImplicitCast = Cast<3>(CallFunc_Multiply_DoubleDouble_ReturnValue);0x0220 CallFunc_MakeRotator_ReturnValue = MakeRotator(0f, 0f, CallFunc_MakeRotator_Yaw_ImplicitCast);0x024F Screw.K2_AddLocalRotation(CallFunc_MakeRotator_ReturnValue, false, CallFunc_K2_AddLocalRotation_SweepHitResult, false);0x0283 Label_0283:0x0283 return;Public 0x1495c50 0x00 void SetScrewVisual (double ScrewAmountVisual ) Script3 statements · 30 bytes of bytecode 0x0000 ScrewAmountVisual = ScrewAmountVisual;0x001B return;Public 0x1495c50 0x08 void OnRep_IsScrewedIn () Script16 statements · 231 bytes of bytecode 0x0000 if (!(IsScrewedIn)) goto Label_0080;0x000E FlushNetDormancy();0x0018 ScrewAmount = 1;0x0033 MarkPropertyDirtyFromRepIndex(this, 10, FName(ScrewAmount));0x0050 OnRep_ScrewAmount();0x005E ScrewedIn.Broadcast(this, ScrewingPlayer);0x007B goto Label_00E4;0x0080 Label_0080:0x0080 FlushNetDormancy();0x008A ScrewAmount = 0;0x00A5 MarkPropertyDirtyFromRepIndex(this, 10, FName(ScrewAmount));0x00C2 OnRep_ScrewAmount();0x00D0 ScrewedOut.Broadcast(this);0x00E4 Label_00E4:0x00E4 return;0x1495c50 0x00 void CallBackPrimaryFire (ABP_FirstPersonCharacter_C * Player , bool Stop ) Script5 statements · 54 bytes of bytecode 0x0000 PersistentFrame.K2Node_Event_Player_1 = Player;0x0012 PersistentFrame.K2Node_Event_Stop_1 = Stop;0x0024 ExecuteUbergraph_BP_ScrewHole(1042);0x0033 return;Public 0x1495c50 0x09 void CallBackSecondaryFire (ABP_FirstPersonCharacter_C * Player , bool Stop ) Script5 statements · 54 bytes of bytecode 0x0000 PersistentFrame.K2Node_Event_Player = Player;0x0012 PersistentFrame.K2Node_Event_Stop = Stop;0x0024 ExecuteUbergraph_BP_ScrewHole(1364);0x0033 return;Public 0x1495c50 0x09 void AssignGamePlayTags (const FGameplayTagContainer & TagsToAdd , const FGameplayTagContainer & TagsToRemove ) Script5 statements · 54 bytes of bytecode 0x0000 PersistentFrame.K2Node_Event_TagsToAdd = TagsToAdd;0x0012 PersistentFrame.K2Node_Event_TagsToRemove = TagsToRemove;0x0024 ExecuteUbergraph_BP_ScrewHole(1369);0x0033 return;Public 0x1495c50 0x40 void StartCooking (int32 Heat ) Script4 statements · 36 bytes of bytecode 0x0000 PersistentFrame.K2Node_Event_Heat_1 = Heat;0x0012 ExecuteUbergraph_BP_ScrewHole(1374);0x0021 return;Public 0x1495c50 0x04 void StopCooking () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_BP_ScrewHole(1379);0x000F return;Public 0x1495c50 0x00 void StartWelding (int32 Heat ) Script4 statements · 36 bytes of bytecode 0x0000 PersistentFrame.K2Node_Event_Heat = Heat;0x0012 ExecuteUbergraph_BP_ScrewHole(1384);0x0021 return;Public 0x1495c50 0x04 void StopWelding () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_BP_ScrewHole(1389);0x000F return;Public 0x1495c50 0x00 void OnPlayerSit (ARGFirstPersonCharacter * PlayerCharacter , bool IsSittingDown ) Script5 statements · 54 bytes of bytecode 0x0000 PersistentFrame.K2Node_Event_PlayerCharacter = PlayerCharacter;0x0012 PersistentFrame.K2Node_Event_IsSittingDown = IsSittingDown;0x0024 ExecuteUbergraph_BP_ScrewHole(1394);0x0033 return;Public 0x1495c50 0x09 void CallbackLocalToServerAddImpulse (AActor * Instigator , AActor * Target , const FVector & ImpulseStartLocation , const FVector & ImpulseEndLocation , const FVector & Force , const FGameplayTag & LookUpClass , bool IsLocal ) Script10 statements · 144 bytes of bytecode 0x0000 PersistentFrame.K2Node_Event_Instigator = Instigator;0x0012 PersistentFrame.K2Node_Event_Target = Target;0x0024 PersistentFrame.K2Node_Event_ImpulseStartLocation = ImpulseStartLocation;0x0036 PersistentFrame.K2Node_Event_ImpulseEndLocation = ImpulseEndLocation;0x0048 PersistentFrame.K2Node_Event_Force = Force;0x005A PersistentFrame.K2Node_Event_LookUpClass = LookUpClass;0x006C PersistentFrame.K2Node_Event_IsLocal = IsLocal;0x007E ExecuteUbergraph_BP_ScrewHole(1399);0x008D return;Public 0x1495c50 0x61 void ReceiveBeginPlay () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_BP_ScrewHole(1404);0x000F return;Event Protected 0x1495c50 0x00 void UpdateScrewAmountFromDrill (double ScrewAmount , ABP_FirstPersonCharacter_C * PlayerScrewing ) Script5 statements · 54 bytes of bytecode 0x0000 PersistentFrame.K2Node_CustomEvent_ScrewAmount_1 = ScrewAmount;0x0012 PersistentFrame.K2Node_CustomEvent_PlayerScrewing = PlayerScrewing;0x0024 ExecuteUbergraph_BP_ScrewHole(1423);0x0033 return;0x1495c50 0x10 void UpdateScrewAmountFromDamage (double ScrewAmount ) Script4 statements · 36 bytes of bytecode 0x0000 PersistentFrame.K2Node_CustomEvent_ScrewAmount = ScrewAmount;0x0012 ExecuteUbergraph_BP_ScrewHole(2930);0x0021 return;0x1495c50 0x08 void Multicast_StartScrewInAnim (ABP_FirstPersonCharacter_C * ScrewingPlayer ) Script4 statements · 36 bytes of bytecode 0x0000 PersistentFrame.K2Node_CustomEvent_ScrewingPlayer_2 = ScrewingPlayer;0x0012 ExecuteUbergraph_BP_ScrewHole(3079);0x0021 return;0x1495c50 0x08 void Multicast_StartScrewOutAnim (ABP_FirstPersonCharacter_C * ScrewingPlayer ) Script4 statements · 36 bytes of bytecode 0x0000 PersistentFrame.K2Node_CustomEvent_ScrewingPlayer_1 = ScrewingPlayer;0x0012 ExecuteUbergraph_BP_ScrewHole(3248);0x0021 return;0x1495c50 0x08 void ScrewIn () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_BP_ScrewHole(3313);0x000F return;0x1495c50 0x00 void ScrewOut () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_BP_ScrewHole(3484);0x000F return;0x1495c50 0x00 void Multicast_StopScrewing (ABP_FirstPersonCharacter_C * ScrewingPlayer ) Script4 statements · 36 bytes of bytecode 0x0000 PersistentFrame.K2Node_CustomEvent_ScrewingPlayer = ScrewingPlayer;0x0012 ExecuteUbergraph_BP_ScrewHole(3655);0x0021 return;0x1495c50 0x08 void Multicast_ScrewingCompleted () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_BP_ScrewHole(3733);0x000F return;0x1495c50 0x00 void ExecuteUbergraph_BP_ScrewHole (int32 EntryPoint ) Script171 statements · 3,755 bytes of bytecode 0x0000 goto [EntryPoint];0x000A Label_000A:0x000A OnRep_ScrewAmount();0x0018 CallFunc_FClamp_ReturnValue_1 = FClamp(K2Node_CustomEvent_ScrewAmount, 0, 1);0x004F ScrewAmountVisual = CallFunc_FClamp_ReturnValue_1;0x006A CallFunc_EqualEqual_DoubleDouble_ReturnValue_2 = EqualEqual_DoubleDouble(ScrewAmount, 0);0x0090 if (!(CallFunc_EqualEqual_DoubleDouble_ReturnValue_2)) goto Label_0EA8;0x009E Wheel.ScrewedOut(this);0x00C3 goto Label_0EA8;0x00C8 Label_00C8:0x00C8 MarkPropertyDirtyFromRepIndex(this, 10, FName(ScrewAmount));0x00E5 goto Label_000A;0x00EA Label_00EA:0x00EA FlushNetDormancy();0x00F4 CallFunc_FClamp_ReturnValue_1 = FClamp(K2Node_CustomEvent_ScrewAmount, 0, 1);0x012B ScrewAmount = CallFunc_FClamp_ReturnValue_1;0x0146 goto Label_00C8;0x014B Label_014B:0x014B OnRep_ScrewAmount();0x0159 goto Label_0EA8;0x015E Label_015E:0x015E MarkPropertyDirtyFromRepIndex(this, 10, FName(ScrewAmount));0x017B goto Label_014B;0x0180 Label_0180:0x0180 FlushNetDormancy();0x018A ScrewAmount = ScrewAmountVisual;0x01A5 goto Label_015E;0x01AA Label_01AA:0x01AA CallFunc_IsValid_ReturnValue = IsValid(ScrewingPlayer);0x01C7 if (!(CallFunc_IsValid_ReturnValue)) goto Label_0EA8;0x01D5 CallFunc_GetController_ReturnValue_2 = ScrewingPlayer.GetController();0x01FF K2Node_DynamicCast_AsBP_First_Person_Player_Controller_2 = Cast<BP_FirstPersonPlayerController_C>(CallFunc_GetController_ReturnValue_2);0x0223 K2Node_DynamicCast_bSuccess_2 = Cast<1>(K2Node_DynamicCast_AsBP_First_Person_Player_Controller_2);0x0240 if (!(K2Node_DynamicCast_bSuccess_2)) goto Label_0EA8;0x024E CallFunc_GetController_ReturnValue_2 = ScrewingPlayer.GetController();0x0278 CallFunc_IsLocalController_ReturnValue = CallFunc_GetController_ReturnValue_2.IsLocalController();0x02A6 if (!(CallFunc_IsLocalController_ReturnValue)) goto Label_0EA8;0x02B4 K2Node_DynamicCast_AsBP_First_Person_Player_Controller_2.Server_ScrewinCompleted(this);0x02D9 goto Label_0EA8;0x02DE Label_02DE:0x02DE CallFunc_IsValid_ReturnValue_1 = IsValid(ScrewingPlayer);0x02FB if (!(CallFunc_IsValid_ReturnValue_1)) goto Label_0EA8;0x0309 CallFunc_GetController_ReturnValue_3 = ScrewingPlayer.GetController();0x0333 K2Node_DynamicCast_AsBP_First_Person_Player_Controller_3 = Cast<BP_FirstPersonPlayerController_C>(CallFunc_GetController_ReturnValue_3);0x0357 K2Node_DynamicCast_bSuccess_3 = Cast<1>(K2Node_DynamicCast_AsBP_First_Person_Player_Controller_3);0x0374 if (!(K2Node_DynamicCast_bSuccess_3)) goto Label_0EA8;0x0382 CallFunc_GetController_ReturnValue_3 = ScrewingPlayer.GetController();0x03AC CallFunc_IsLocalController_ReturnValue_1 = CallFunc_GetController_ReturnValue_3.IsLocalController();0x03DA if (!(CallFunc_IsLocalController_ReturnValue_1)) goto Label_0EA8;0x03E8 K2Node_DynamicCast_AsBP_First_Person_Player_Controller_3.Server_ScrewinCompleted(this);0x040D goto Label_0EA8;0x0412 goto Label_0EA8;0x0417 Label_0417:0x0417 CallFunc_IsValid_ReturnValue_2 = IsValid(ScrewingPlayer);0x0434 if (!(CallFunc_IsValid_ReturnValue_2)) goto Label_0EA8;0x0442 CallFunc_GetController_ReturnValue_4 = ScrewingPlayer.GetController();0x046C K2Node_DynamicCast_AsBP_First_Person_Player_Controller_4 = Cast<BP_FirstPersonPlayerController_C>(CallFunc_GetController_ReturnValue_4);0x0490 K2Node_DynamicCast_bSuccess_4 = Cast<1>(K2Node_DynamicCast_AsBP_First_Person_Player_Controller_4);0x04AD if (!(K2Node_DynamicCast_bSuccess_4)) goto Label_0EA8;0x04BB CallFunc_GetController_ReturnValue_4 = ScrewingPlayer.GetController();0x04E5 CallFunc_IsLocalController_ReturnValue_2 = CallFunc_GetController_ReturnValue_4.IsLocalController();0x0513 if (!(CallFunc_IsLocalController_ReturnValue_2)) goto Label_0EA8;0x0521 K2Node_DynamicCast_AsBP_First_Person_Player_Controller_4.Server_SetScrewAmount(this, ScrewAmountVisual);0x054F goto Label_0EA8;0x0554 goto Label_0EA8;0x0559 goto Label_0EA8;0x055E goto Label_0EA8;0x0563 goto Label_0EA8;0x0568 goto Label_0EA8;0x056D goto Label_0EA8;0x0572 goto Label_0EA8;0x0577 goto Label_0EA8;0x057C Internal_UpdateScrewVisuals();0x058A goto Label_0EA8;0x058F ScrewingPlayer = K2Node_CustomEvent_PlayerScrewing;0x05A2 CallFunc_IsLocallyControlled_ReturnValue_1 = ScrewingPlayer.IsLocallyControlled();0x05D0 if (!(CallFunc_IsLocallyControlled_ReturnValue_1)) goto Label_0EA8;0x05DE CallFunc_GetController_ReturnValue_1 = ScrewingPlayer.GetController();0x0608 CallFunc_IsValid_ReturnValue_4 = IsValid(CallFunc_GetController_ReturnValue_1);0x0625 if (!(CallFunc_IsValid_ReturnValue_4)) goto Label_0EA8;0x0633 CallFunc_Add_DoubleDouble_ReturnValue = Add_DoubleDouble(ScrewAmount, K2Node_CustomEvent_ScrewAmount_1);0x0661 CallFunc_FClamp_ReturnValue = FClamp(CallFunc_Add_DoubleDouble_ReturnValue, 0, 1);0x0698 CallFunc_GetController_ReturnValue_1 = ScrewingPlayer.GetController();0x06C2 K2Node_DynamicCast_AsBP_First_Person_Player_Controller_1 = Cast<BP_FirstPersonPlayerController_C>(CallFunc_GetController_ReturnValue_1);0x06E6 K2Node_DynamicCast_bSuccess_1 = Cast<1>(K2Node_DynamicCast_AsBP_First_Person_Player_Controller_1);0x0703 K2Node_DynamicCast_AsBP_First_Person_Player_Controller_1.Server_UpdateScrewAmount(this, CallFunc_FClamp_ReturnValue);0x0731 CallFunc_Add_DoubleDouble_ReturnValue = Add_DoubleDouble(ScrewAmount, K2Node_CustomEvent_ScrewAmount_1);0x075F CallFunc_FClamp_ReturnValue = FClamp(CallFunc_Add_DoubleDouble_ReturnValue, 0, 1);0x0796 CallFunc_GetController_ReturnValue_1 = ScrewingPlayer.GetController();0x07C0 K2Node_DynamicCast_AsBP_First_Person_Player_Controller_1 = Cast<BP_FirstPersonPlayerController_C>(CallFunc_GetController_ReturnValue_1);0x07E4 K2Node_DynamicCast_bSuccess_1 = Cast<1>(K2Node_DynamicCast_AsBP_First_Person_Player_Controller_1);0x0801 K2Node_DynamicCast_AsBP_First_Person_Player_Controller_1.Server_UpdateScrewVisual(this, CallFunc_FClamp_ReturnValue);0x082F Internal_UpdateScrewVisuals();0x083D UpdateScrewPosition.Broadcast(ScrewAmount, this);0x085A CallFunc_EqualEqual_DoubleDouble_ReturnValue = EqualEqual_DoubleDouble(ScrewAmount, 1);0x0880 if (!(CallFunc_EqualEqual_DoubleDouble_ReturnValue)) goto Label_0A48;0x088E CallFunc_IsValid_ReturnValue_3 = IsValid(ScrewingPlayer);0x08AB if (!(CallFunc_IsValid_ReturnValue_3)) goto Label_0EA8;0x08B9 CallFunc_IsLocallyControlled_ReturnValue = ScrewingPlayer.IsLocallyControlled();0x08E7 if (!(CallFunc_IsLocallyControlled_ReturnValue)) goto Label_0EA8;0x08F5 CallFunc_GetController_ReturnValue = ScrewingPlayer.GetController();0x091F K2Node_DynamicCast_AsBP_First_Person_Player_Controller = Cast<BP_FirstPersonPlayerController_C>(CallFunc_GetController_ReturnValue);0x0943 K2Node_DynamicCast_bSuccess = Cast<1>(K2Node_DynamicCast_AsBP_First_Person_Player_Controller);0x0960 K2Node_DynamicCast_AsBP_First_Person_Player_Controller.Server_IsScrewedIn(this, true, ScrewingPlayer);0x098F Label_098F:0x098F CallFunc_LessEqual_DoubleDouble_ReturnValue = LessEqual_DoubleDouble(ScrewAmount, 0);0x09B5 CallFunc_GreaterEqual_DoubleDouble_ReturnValue = GreaterEqual_DoubleDouble(ScrewAmount, 1);0x09DB CallFunc_BooleanOR_ReturnValue = BooleanOR(CallFunc_LessEqual_DoubleDouble_ReturnValue, CallFunc_GreaterEqual_DoubleDouble_ReturnValue);0x0A01 if (!(CallFunc_BooleanOR_ReturnValue)) goto Label_0B57;0x0A0F CallFunc_LessEqual_DoubleDouble_ReturnValue = LessEqual_DoubleDouble(ScrewAmount, 0);0x0A35 if (!(CallFunc_LessEqual_DoubleDouble_ReturnValue)) goto Label_0EA8;0x0A43 goto Label_0EA8;0x0A48 Label_0A48:0x0A48 CallFunc_EqualEqual_DoubleDouble_ReturnValue_1 = EqualEqual_DoubleDouble(ScrewAmount, 0);0x0A6E if (!(CallFunc_EqualEqual_DoubleDouble_ReturnValue_1)) goto Label_098F;0x0A7C CallFunc_IsLocallyControlled_ReturnValue = ScrewingPlayer.IsLocallyControlled();0x0AAA if (!(CallFunc_IsLocallyControlled_ReturnValue)) goto Label_0EA8;0x0AB8 CallFunc_GetController_ReturnValue = ScrewingPlayer.GetController();0x0AE2 K2Node_DynamicCast_AsBP_First_Person_Player_Controller = Cast<BP_FirstPersonPlayerController_C>(CallFunc_GetController_ReturnValue);0x0B06 K2Node_DynamicCast_bSuccess = Cast<1>(K2Node_DynamicCast_AsBP_First_Person_Player_Controller);0x0B23 K2Node_DynamicCast_AsBP_First_Person_Player_Controller.Server_IsScrewedIn(this, false, ScrewingPlayer);0x0B52 goto Label_098F;0x0B57 Label_0B57:0x0B57 Temp_bool_IsClosed_Variable = false;0x0B62 Temp_bool_Has_Been_Initd_Variable = true;0x0B6D goto Label_0EA8;0x0B72 CallFunc_IsServer_ReturnValue = IsServer(this);0x0B87 if (!(CallFunc_IsServer_ReturnValue)) goto Label_0EA8;0x0B95 goto Label_00EA;0x0B9A Label_0B9A:0x0B9A K2Node_CreateDelegate_OutputDelegate.Bind(this, ScrewOut);0x0BB1 CallFunc_K2_SetTimerDelegate_ReturnValue = K2_SetTimerDelegate(K2Node_CreateDelegate_OutputDelegate, 0.01f, true, false, 0f, 0f);0x0BE7 ScrewOutTimer = CallFunc_K2_SetTimerDelegate_ReturnValue;0x0C02 goto Label_0EA8;0x0C07 ScrewingPlayer = K2Node_CustomEvent_ScrewingPlayer_2;0x0C1A ClearTimers();0x0C28 ScrewAmountVisual = ScrewAmount;0x0C43 K2Node_CreateDelegate_OutputDelegate_1.Bind(this, ScrewIn);0x0C5A CallFunc_K2_SetTimerDelegate_ReturnValue_1 = K2_SetTimerDelegate(K2Node_CreateDelegate_OutputDelegate_1, 0.01f, true, false, 0f, 0f);0x0C90 ScrewInTimer = CallFunc_K2_SetTimerDelegate_ReturnValue_1;0x0CAB goto Label_0EA8;0x0CB0 ScrewingPlayer = K2Node_CustomEvent_ScrewingPlayer_1;0x0CC3 ClearTimers();0x0CD1 ScrewAmountVisual = ScrewAmount;0x0CEC goto Label_0B9A;0x0CF1 CallFunc_Add_DoubleDouble_ReturnValue_1 = Add_DoubleDouble(ScrewAmountVisual, 0.01);0x0D1F ScrewAmountVisual = CallFunc_Add_DoubleDouble_ReturnValue_1;0x0D3A Internal_UpdateScrewVisuals();0x0D48 CallFunc_GreaterEqual_DoubleDouble_ReturnValue_1 = GreaterEqual_DoubleDouble(ScrewAmountVisual, 1);0x0D6E if (!(CallFunc_GreaterEqual_DoubleDouble_ReturnValue_1)) goto Label_0EA8;0x0D7C ScrewAmountVisual = 1;0x0D97 goto Label_01AA;0x0D9C CallFunc_Add_DoubleDouble_ReturnValue_2 = Add_DoubleDouble(ScrewAmountVisual, -0.01);0x0DCA ScrewAmountVisual = CallFunc_Add_DoubleDouble_ReturnValue_2;0x0DE5 Internal_UpdateScrewVisuals();0x0DF3 CallFunc_LessEqual_DoubleDouble_ReturnValue_1 = LessEqual_DoubleDouble(ScrewAmountVisual, 0);0x0E19 if (!(CallFunc_LessEqual_DoubleDouble_ReturnValue_1)) goto Label_0EA8;0x0E27 ScrewAmountVisual = 0;0x0E42 goto Label_02DE;0x0E47 ScrewingPlayer = K2Node_CustomEvent_ScrewingPlayer;0x0E5A ClearTimers();0x0E68 goto Label_0417;0x0E6D Label_0E6D:0x0E6D CallFunc_IsServer_ReturnValue_1 = IsServer(this);0x0E82 if (!(CallFunc_IsServer_ReturnValue_1)) goto Label_0EA8;0x0E90 goto Label_0180;0x0E95 ClearTimers();0x0EA3 goto Label_0E6D;0x0EA8 Label_0EA8:0x0EA8 return;Final 0x1495c50 0x04 void ScrewedOut__DelegateSignature (ABP_ScrewHole_C * ScrewHolle ) Script2 statements · 3 bytes of bytecode Public 0x1495c50 0x08 void ScrewedIn__DelegateSignature (ABP_ScrewHole_C * ScrewHole , ABP_FirstPersonCharacter_C * PlayerScrewing ) Script2 statements · 3 bytes of bytecode Public 0x1495c50 0x10 void UpdateScrewPosition__DelegateSignature (double ScrewAmount , ABP_ScrewHole_C * ScrewHole ) Script2 statements · 3 bytes of bytecode Public 0x1495c50 0x10