void GetRideableSteeringInput (const bool & Success , const double & Steering ) Script4 statements · 41 bytes of bytecode 0x0000 Success = false;0x000B Steering = 0;0x0026 return;Public 0x147c170 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 0x147c170 0x111 void TeleportByRocket (AActor * Rocket , const FVector & NewLocation , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 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 0x147c170 0x20 void SetInsideRV (bool InsideRV , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x02 void CanBeNailed (const bool & CanBeNailed , const bool & CanBeNailAnchor ) Script4 statements · 25 bytes of bytecode 0x0000 CanBeNailed = false;0x000B CanBeNailAnchor = false;0x0016 return;Public 0x147c170 0x02 void SetFastenedPhysicsState (const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x01 void RemoveNail (AActor * Nail , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 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 0x147c170 0x79 void EnableRideableInput (bool EnableInput , ABP_FirstPersonPlayerController_C * PlayerController , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 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 0x147c170 0x29 void IsRideable (const bool & IsRideable , const ECharSeatType & SeatType ) Script4 statements · 34 bytes of bytecode 0x0000 IsRideable = false;0x000B SeatType = 0;0x001F return;Public 0x147c170 0x02 void GetAttachedToPlayerInteractionTexts (TMap<UInputAction *, FText> & PickedUpPlayerInteractions ) Script3 statements · 43 bytes of bytecode 0x0000 PickedUpPlayerInteractions = TMap{};0x0028 return;Public 0x147c170 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 0x147c170 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 0x147c170 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 0x147c170 0xC0 void IsAttachPointBlocking (UObject * PickUpObject , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x09 void PlaceActor (const FTransform & PlacementTransform , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x61 void AddImpulseAtLocation (const FVector & ImpulseStrength , const FVector & Location , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x31 void IsPickupable (const bool & IsPickupable ) Script3 statements · 14 bytes of bytecode 0x0000 IsPickupable = false;0x000B return;Public 0x147c170 0x01 void ShouldUseHoldTransform (const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x01 void GetDisplayName (const bool & Success , FText & DisplayName ) Script4 statements · 34 bytes of bytecode 0x0000 Success = false;0x000B DisplayName = FText();0x001F return;Public 0x147c170 0x18 void SecondaryInteract (ABP_FirstPersonCharacter_C * InstigatingPlayer , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x09 void AddImpulse (const FVector & ImpulseStrength , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x19 void BlockInteraction (ABP_FirstPersonCharacter_C * Player , const bool & BlockInteraction ) Script3 statements · 14 bytes of bytecode 0x0000 BlockInteraction = false;0x000B return;Public 0x147c170 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 0x147c170 0x112 void GetPhysicsMesh (const bool & Success , const UPrimitiveComponent * & PrimitiveComponent ) Script4 statements · 25 bytes of bytecode 0x0000 Success = false;0x000B PrimitiveComponent = nullptr;0x0016 return;Public 0x147c170 0x10 void SetPickedUpPhysicsState (const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x01 void SetDroppedPhysicsState (const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x01 void GetCustomHoldTransform (const bool & Success , FTransform & Transform ) Script4 statements · 113 bytes of bytecode 0x0000 Success = false;0x000B Transform = FTransform(...);0x006E return;Public 0x147c170 0x70 void SetAttachedPhysicsState (const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 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 0x147c170 0x81 void ForceAttach (AActor * Parent , const FTransform & RelativeTransform , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x71 void ForceDetach (bool Destroy , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 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 0x147c170 0x131 void CanPickUpObjectBeAttachedToLookAtObject (UObject * PickUpObject , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x09 void GetObjectAttachType (const bool & Success , FGameplayTagContainer & AttachType ) Script4 statements · 60 bytes of bytecode 0x0000 Success = false;0x000B AttachType = GameplayTagContainer{{}};0x0039 return;Public 0x147c170 0x28 void SetAttachPointState (const FGameplayTag & AttachPointState , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 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 0x147c170 0x0C void GetCustomAttachComponent (const bool & Success , const USceneComponent * & CustomAttachComponent ) Script4 statements · 25 bytes of bytecode 0x0000 Success = false;0x000B CustomAttachComponent = nullptr;0x0016 return;Public 0x147c170 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 0x147c170 0x70 void SetNewAttachTransform (const FTransform & NewTransform , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 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 0x147c170 0x10 void Explode (const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x01 void GetThirdPersonDummyClass (const TSubclassOf<ABP_ThirdPersonDummy_C > & ThirdPersonDummyClass ) Script3 statements · 14 bytes of bytecode 0x0000 ThirdPersonDummyClass = nullptr;0x000B return;Public 0x147c170 0x08 void GetVisuals (const UStaticMesh * & Mesh , const UMaterialInstanceDynamic * & DynamicMaterial ) Script4 statements · 25 bytes of bytecode 0x0000 Mesh = nullptr;0x000B DynamicMaterial = nullptr;0x0016 return;Public 0x147c170 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 0x147c170 0xC1 void GetAcceptedDamageTypes (const bool & Success , FGameplayTagContainer & AcceptedDamageTypes ) Script4 statements · 60 bytes of bytecode 0x0000 Success = false;0x000B AcceptedDamageTypes = GameplayTagContainer{{}};0x0039 return;Public 0x147c170 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 0x147c170 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 0x147c170 0x109 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 0x147c170 0x00 void OnRep_ScrewAmount () Script15 statements · 271 bytes of bytecode 0x0000 ScrewAmountVisual = ScrewAmount;0x001B Internal_UpdateScrewVisuals();0x0029 CallFunc_IsServer_ReturnValue = IsServer(this);0x003E if (!(CallFunc_IsServer_ReturnValue)) goto Label_010C;0x004C CallFunc_EqualEqual_DoubleDouble_ReturnValue_1 = EqualEqual_DoubleDouble(ScrewAmount, 0);0x0072 if (!(CallFunc_EqualEqual_DoubleDouble_ReturnValue_1)) goto Label_00AA;0x0080 Wheel.ScrewedOut(this);0x00A5 goto Label_010C;0x00AA Label_00AA:0x00AA CallFunc_EqualEqual_DoubleDouble_ReturnValue = EqualEqual_DoubleDouble(ScrewAmount, 1);0x00D0 if (!(CallFunc_EqualEqual_DoubleDouble_ReturnValue)) goto Label_010C;0x00DE Wheel.ScrewedIn(this, ScrewingPlayer);0x010C Label_010C:0x010C return;0x147c170 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 0x147c170 0x00 void SetScrewVisual (double ScrewAmountVisual ) Script3 statements · 30 bytes of bytecode 0x0000 ScrewAmountVisual = ScrewAmountVisual;0x001B return;Public 0x147c170 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;0x147c170 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 0x147c170 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 0x147c170 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 0x147c170 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 0x147c170 0x04 void StopCooking () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_BP_ScrewHole(1379);0x000F return;Public 0x147c170 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 0x147c170 0x04 void StopWelding () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_BP_ScrewHole(1389);0x000F return;Public 0x147c170 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 0x147c170 0x09 void ReceiveBeginPlay () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_BP_ScrewHole(1399);0x000F return;Event Protected 0x147c170 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(1418);0x0033 return;0x147c170 0x10 void UpdateScrewAmountFromDamage (double ScrewAmount ) Script4 statements · 36 bytes of bytecode 0x0000 PersistentFrame.K2Node_CustomEvent_ScrewAmount = ScrewAmount;0x0012 ExecuteUbergraph_BP_ScrewHole(2925);0x0021 return;0x147c170 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(3074);0x0021 return;0x147c170 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(3243);0x0021 return;0x147c170 0x08 void ScrewIn () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_BP_ScrewHole(3308);0x000F return;0x147c170 0x00 void ScrewOut () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_BP_ScrewHole(3479);0x000F return;0x147c170 0x00 void Multicast_StopScrewing (ABP_FirstPersonCharacter_C * ScrewingPlayer ) Script4 statements · 36 bytes of bytecode 0x0000 PersistentFrame.K2Node_CustomEvent_ScrewingPlayer = ScrewingPlayer;0x0012 ExecuteUbergraph_BP_ScrewHole(3650);0x0021 return;0x147c170 0x08 void Multicast_ScrewingCompleted () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_BP_ScrewHole(3728);0x000F return;0x147c170 0x00 void ExecuteUbergraph_BP_ScrewHole (int32 EntryPoint ) Script170 statements · 3,750 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_0EA3;0x009E Wheel.ScrewedOut(this);0x00C3 goto Label_0EA3;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_0EA3;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_0EA3;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_0EA3;0x024E CallFunc_GetController_ReturnValue_2 = ScrewingPlayer.GetController();0x0278 CallFunc_IsLocalController_ReturnValue = CallFunc_GetController_ReturnValue_2.IsLocalController();0x02A6 if (!(CallFunc_IsLocalController_ReturnValue)) goto Label_0EA3;0x02B4 K2Node_DynamicCast_AsBP_First_Person_Player_Controller_2.Server_ScrewinCompleted(this);0x02D9 goto Label_0EA3;0x02DE Label_02DE:0x02DE CallFunc_IsValid_ReturnValue_1 = IsValid(ScrewingPlayer);0x02FB if (!(CallFunc_IsValid_ReturnValue_1)) goto Label_0EA3;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_0EA3;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_0EA3;0x03E8 K2Node_DynamicCast_AsBP_First_Person_Player_Controller_3.Server_ScrewinCompleted(this);0x040D goto Label_0EA3;0x0412 goto Label_0EA3;0x0417 Label_0417:0x0417 CallFunc_IsValid_ReturnValue_2 = IsValid(ScrewingPlayer);0x0434 if (!(CallFunc_IsValid_ReturnValue_2)) goto Label_0EA3;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_0EA3;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_0EA3;0x0521 K2Node_DynamicCast_AsBP_First_Person_Player_Controller_4.Server_SetScrewAmount(this, ScrewAmountVisual);0x054F goto Label_0EA3;0x0554 goto Label_0EA3;0x0559 goto Label_0EA3;0x055E goto Label_0EA3;0x0563 goto Label_0EA3;0x0568 goto Label_0EA3;0x056D goto Label_0EA3;0x0572 goto Label_0EA3;0x0577 Internal_UpdateScrewVisuals();0x0585 goto Label_0EA3;0x058A ScrewingPlayer = K2Node_CustomEvent_PlayerScrewing;0x059D CallFunc_IsLocallyControlled_ReturnValue_1 = ScrewingPlayer.IsLocallyControlled();0x05CB if (!(CallFunc_IsLocallyControlled_ReturnValue_1)) goto Label_0EA3;0x05D9 CallFunc_GetController_ReturnValue_1 = ScrewingPlayer.GetController();0x0603 CallFunc_IsValid_ReturnValue_4 = IsValid(CallFunc_GetController_ReturnValue_1);0x0620 if (!(CallFunc_IsValid_ReturnValue_4)) goto Label_0EA3;0x062E CallFunc_Add_DoubleDouble_ReturnValue = Add_DoubleDouble(ScrewAmount, K2Node_CustomEvent_ScrewAmount_1);0x065C CallFunc_FClamp_ReturnValue = FClamp(CallFunc_Add_DoubleDouble_ReturnValue, 0, 1);0x0693 CallFunc_GetController_ReturnValue_1 = ScrewingPlayer.GetController();0x06BD K2Node_DynamicCast_AsBP_First_Person_Player_Controller_1 = Cast<BP_FirstPersonPlayerController_C>(CallFunc_GetController_ReturnValue_1);0x06E1 K2Node_DynamicCast_bSuccess_1 = Cast<1>(K2Node_DynamicCast_AsBP_First_Person_Player_Controller_1);0x06FE K2Node_DynamicCast_AsBP_First_Person_Player_Controller_1.Server_UpdateScrewAmount(this, CallFunc_FClamp_ReturnValue);0x072C CallFunc_Add_DoubleDouble_ReturnValue = Add_DoubleDouble(ScrewAmount, K2Node_CustomEvent_ScrewAmount_1);0x075A CallFunc_FClamp_ReturnValue = FClamp(CallFunc_Add_DoubleDouble_ReturnValue, 0, 1);0x0791 CallFunc_GetController_ReturnValue_1 = ScrewingPlayer.GetController();0x07BB K2Node_DynamicCast_AsBP_First_Person_Player_Controller_1 = Cast<BP_FirstPersonPlayerController_C>(CallFunc_GetController_ReturnValue_1);0x07DF K2Node_DynamicCast_bSuccess_1 = Cast<1>(K2Node_DynamicCast_AsBP_First_Person_Player_Controller_1);0x07FC K2Node_DynamicCast_AsBP_First_Person_Player_Controller_1.Server_UpdateScrewVisual(this, CallFunc_FClamp_ReturnValue);0x082A Internal_UpdateScrewVisuals();0x0838 UpdateScrewPosition.Broadcast(ScrewAmount, this);0x0855 CallFunc_EqualEqual_DoubleDouble_ReturnValue = EqualEqual_DoubleDouble(ScrewAmount, 1);0x087B if (!(CallFunc_EqualEqual_DoubleDouble_ReturnValue)) goto Label_0A43;0x0889 CallFunc_IsValid_ReturnValue_3 = IsValid(ScrewingPlayer);0x08A6 if (!(CallFunc_IsValid_ReturnValue_3)) goto Label_0EA3;0x08B4 CallFunc_IsLocallyControlled_ReturnValue = ScrewingPlayer.IsLocallyControlled();0x08E2 if (!(CallFunc_IsLocallyControlled_ReturnValue)) goto Label_0EA3;0x08F0 CallFunc_GetController_ReturnValue = ScrewingPlayer.GetController();0x091A K2Node_DynamicCast_AsBP_First_Person_Player_Controller = Cast<BP_FirstPersonPlayerController_C>(CallFunc_GetController_ReturnValue);0x093E K2Node_DynamicCast_bSuccess = Cast<1>(K2Node_DynamicCast_AsBP_First_Person_Player_Controller);0x095B K2Node_DynamicCast_AsBP_First_Person_Player_Controller.Server_IsScrewedIn(this, true, ScrewingPlayer);0x098A Label_098A:0x098A CallFunc_LessEqual_DoubleDouble_ReturnValue = LessEqual_DoubleDouble(ScrewAmount, 0);0x09B0 CallFunc_GreaterEqual_DoubleDouble_ReturnValue = GreaterEqual_DoubleDouble(ScrewAmount, 1);0x09D6 CallFunc_BooleanOR_ReturnValue = BooleanOR(CallFunc_LessEqual_DoubleDouble_ReturnValue, CallFunc_GreaterEqual_DoubleDouble_ReturnValue);0x09FC if (!(CallFunc_BooleanOR_ReturnValue)) goto Label_0B52;0x0A0A CallFunc_LessEqual_DoubleDouble_ReturnValue = LessEqual_DoubleDouble(ScrewAmount, 0);0x0A30 if (!(CallFunc_LessEqual_DoubleDouble_ReturnValue)) goto Label_0EA3;0x0A3E goto Label_0EA3;0x0A43 Label_0A43:0x0A43 CallFunc_EqualEqual_DoubleDouble_ReturnValue_1 = EqualEqual_DoubleDouble(ScrewAmount, 0);0x0A69 if (!(CallFunc_EqualEqual_DoubleDouble_ReturnValue_1)) goto Label_098A;0x0A77 CallFunc_IsLocallyControlled_ReturnValue = ScrewingPlayer.IsLocallyControlled();0x0AA5 if (!(CallFunc_IsLocallyControlled_ReturnValue)) goto Label_0EA3;0x0AB3 CallFunc_GetController_ReturnValue = ScrewingPlayer.GetController();0x0ADD K2Node_DynamicCast_AsBP_First_Person_Player_Controller = Cast<BP_FirstPersonPlayerController_C>(CallFunc_GetController_ReturnValue);0x0B01 K2Node_DynamicCast_bSuccess = Cast<1>(K2Node_DynamicCast_AsBP_First_Person_Player_Controller);0x0B1E K2Node_DynamicCast_AsBP_First_Person_Player_Controller.Server_IsScrewedIn(this, false, ScrewingPlayer);0x0B4D goto Label_098A;0x0B52 Label_0B52:0x0B52 Temp_bool_IsClosed_Variable = false;0x0B5D Temp_bool_Has_Been_Initd_Variable = true;0x0B68 goto Label_0EA3;0x0B6D CallFunc_IsServer_ReturnValue = IsServer(this);0x0B82 if (!(CallFunc_IsServer_ReturnValue)) goto Label_0EA3;0x0B90 goto Label_00EA;0x0B95 Label_0B95:0x0B95 K2Node_CreateDelegate_OutputDelegate.Bind(this, ScrewOut);0x0BAC CallFunc_K2_SetTimerDelegate_ReturnValue = K2_SetTimerDelegate(K2Node_CreateDelegate_OutputDelegate, 0.01f, true, false, 0f, 0f);0x0BE2 ScrewOutTimer = CallFunc_K2_SetTimerDelegate_ReturnValue;0x0BFD goto Label_0EA3;0x0C02 ScrewingPlayer = K2Node_CustomEvent_ScrewingPlayer_2;0x0C15 ClearTimers();0x0C23 ScrewAmountVisual = ScrewAmount;0x0C3E K2Node_CreateDelegate_OutputDelegate_1.Bind(this, ScrewIn);0x0C55 CallFunc_K2_SetTimerDelegate_ReturnValue_1 = K2_SetTimerDelegate(K2Node_CreateDelegate_OutputDelegate_1, 0.01f, true, false, 0f, 0f);0x0C8B ScrewInTimer = CallFunc_K2_SetTimerDelegate_ReturnValue_1;0x0CA6 goto Label_0EA3;0x0CAB ScrewingPlayer = K2Node_CustomEvent_ScrewingPlayer_1;0x0CBE ClearTimers();0x0CCC ScrewAmountVisual = ScrewAmount;0x0CE7 goto Label_0B95;0x0CEC CallFunc_Add_DoubleDouble_ReturnValue_1 = Add_DoubleDouble(ScrewAmountVisual, 0.01);0x0D1A ScrewAmountVisual = CallFunc_Add_DoubleDouble_ReturnValue_1;0x0D35 Internal_UpdateScrewVisuals();0x0D43 CallFunc_GreaterEqual_DoubleDouble_ReturnValue_1 = GreaterEqual_DoubleDouble(ScrewAmountVisual, 1);0x0D69 if (!(CallFunc_GreaterEqual_DoubleDouble_ReturnValue_1)) goto Label_0EA3;0x0D77 ScrewAmountVisual = 1;0x0D92 goto Label_01AA;0x0D97 CallFunc_Add_DoubleDouble_ReturnValue_2 = Add_DoubleDouble(ScrewAmountVisual, -0.01);0x0DC5 ScrewAmountVisual = CallFunc_Add_DoubleDouble_ReturnValue_2;0x0DE0 Internal_UpdateScrewVisuals();0x0DEE CallFunc_LessEqual_DoubleDouble_ReturnValue_1 = LessEqual_DoubleDouble(ScrewAmountVisual, 0);0x0E14 if (!(CallFunc_LessEqual_DoubleDouble_ReturnValue_1)) goto Label_0EA3;0x0E22 ScrewAmountVisual = 0;0x0E3D goto Label_02DE;0x0E42 ScrewingPlayer = K2Node_CustomEvent_ScrewingPlayer;0x0E55 ClearTimers();0x0E63 goto Label_0417;0x0E68 Label_0E68:0x0E68 CallFunc_IsServer_ReturnValue_1 = IsServer(this);0x0E7D if (!(CallFunc_IsServer_ReturnValue_1)) goto Label_0EA3;0x0E8B goto Label_0180;0x0E90 ClearTimers();0x0E9E goto Label_0E68;0x0EA3 Label_0EA3:0x0EA3 return;Final 0x147c170 0x04 void ScrewedOut__DelegateSignature (ABP_ScrewHole_C * ScrewHolle ) Script2 statements · 3 bytes of bytecode Public 0x147c170 0x08 void ScrewedIn__DelegateSignature (ABP_ScrewHole_C * ScrewHole , ABP_FirstPersonCharacter_C * PlayerScrewing ) Script2 statements · 3 bytes of bytecode Public 0x147c170 0x10 void UpdateScrewPosition__DelegateSignature (double ScrewAmount , ABP_ScrewHole_C * ScrewHole ) Script2 statements · 3 bytes of bytecode Public 0x147c170 0x10