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 ) Script18 statements · 672 bytes of bytecode 0x0000 K2Node_MakeMap_Map = TMap{};0x000F CallFunc_Greater_DoubleDouble_ReturnValue = Greater_DoubleDouble(IceGripValue, 0);0x0035 Temp_bool_Variable = CallFunc_Greater_DoubleDouble_ReturnValue;0x0048 CallFunc_Divide_DoubleDouble_ReturnValue = Divide_DoubleDouble(IceGripValue, 100);0x0076 CallFunc_Conv_DoubleToText_ReturnValue = Conv_DoubleToText(CallFunc_Divide_DoubleDouble_ReturnValue, 0, false, true, 1, 324, 0, 0);0x00B3 K2Node_MakeStruct_FormatArgumentData.ArgumentName = "SnowProtetctionInMetersLeft";0x00EB K2Node_MakeStruct_FormatArgumentData.ArgumentValueType = 4;0x0108 K2Node_MakeStruct_FormatArgumentData.ArgumentValue = CallFunc_Conv_DoubleToText_ReturnValue;0x012C K2Node_MakeStruct_FormatArgumentData.ArgumentValueInt = 0;0x0150 K2Node_MakeStruct_FormatArgumentData.ArgumentValueFloat = 0f;0x0170 K2Node_MakeStruct_FormatArgumentData.ArgumentValueDouble = 0;0x0194 K2Node_MakeStruct_FormatArgumentData.ArgumentValueGender = 0;0x01B1 K2Node_MakeArray_Array = {K2Node_MakeStruct_FormatArgumentData};0x01C5 CallFunc_Format_ReturnValue = Format(NSLOCTEXT("6E1DD64244306755DEC6418FF497B6D3", "", "Durability: {SnowProtetctionInMetersLeft} m"), K2Node_MakeArray_Array);0x023D K2Node_MakeMap_Map_1 = TMap{nullptr: CallFunc_Format_ReturnValue};0x0256 LookAtPlayerInteractionTexts = Switch(Temp_bool_Variable, false => K2Node_MakeMap_Map, true => K2Node_MakeMap_Map_1, default => K2Node_Select_Default);0x029D 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 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 BlockInteraction (ABP_FirstPersonCharacter_C * Player , const bool & BlockInteraction ) Script3 statements · 14 bytes of bytecode 0x0000 BlockInteraction = false;0x000B return;Public 0x147c170 0x09 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 AddImpulse (const FVector & ImpulseStrength , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x19 void SecondaryInteract (ABP_FirstPersonCharacter_C * InstigatingPlayer , const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x09 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 ShouldUseHoldTransform (const bool & Success ) Script3 statements · 14 bytes of bytecode 0x0000 Success = false;0x000B return;Public 0x147c170 0x01 void IsPickupable (const bool & IsPickupable ) Script3 statements · 14 bytes of bytecode 0x0000 IsPickupable = false;0x000B return;Public 0x147c170 0x01 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 StopActiveRollingSFX () Script6 statements · 82 bytes of bytecode 0x0000 CallFunc_IsValid_ReturnValue = IsValid(RollingTireSFX);0x001D if (!(CallFunc_IsValid_ReturnValue)) goto Label_004F;0x002B RollingTireSFX.Stop();0x004F Label_004F:0x004F return;Public 0x147c170 0x00 void GetUDW (const AUltra_Dynamic_Weather_C * & UDW ) Script12 statements · 124 bytes of bytecode 0x0000 CallFunc_IsValid_ReturnValue = IsValid(Internal_CachedUDW);0x001D if (!(CallFunc_IsValid_ReturnValue)) goto Label_0043;0x002B Label_002B:0x002B UDW = Internal_CachedUDW;0x003E goto Label_0079;0x0043 Label_0043:0x0043 CallFunc_GetActorOfClass_ReturnValue = GetActorOfClass(this, /Game/UltraDynamicSky/Blueprints/Ultra_Dynamic_Weather.Ultra_Dynamic_Weather_C);0x0061 Internal_CachedUDW = CallFunc_GetActorOfClass_ReturnValue;0x0074 goto Label_002B;0x0079 Label_0079:0x0079 return;Private 0x147c170 0x08 void AffectSnow () Script17 statements · 929 bytes of bytecode 0x0000 GetUDW(CallFunc_GetUDW_UDW);0x0017 LocalUDW = CallFunc_GetUDW_UDW;0x002A CallFunc_IsValid_ReturnValue = IsValid(LocalUDW);0x0047 if (!(CallFunc_IsValid_ReturnValue)) goto Label_039E;0x0055 CallFunc_Greater_DoubleDouble_ReturnValue = Greater_DoubleDouble(RotationSpeed, 0.2);0x007B if (!(CallFunc_Greater_DoubleDouble_ReturnValue)) goto Label_039E;0x0089 BreakHitResult(WheelData.LastLongTrace, CallFunc_BreakHitResult_bBlockingHit, CallFunc_BreakHitResult_bInitialOverlap, CallFunc_BreakHitResult_Time, CallFunc_BreakHitResult_Distance, CallFunc_BreakHitResult_Location, CallFunc_BreakHitResult_ImpactPoint, CallFunc_BreakHitResult_Normal, CallFunc_BreakHitResult_ImpactNormal, CallFunc_BreakHitResult_PhysMat, CallFunc_BreakHitResult_HitActor, CallFunc_BreakHitResult_HitComponent, CallFunc_BreakHitResult_HitBoneName, CallFunc_BreakHitResult_BoneName, CallFunc_BreakHitResult_HitItem, CallFunc_BreakHitResult_ElementIndex, CallFunc_BreakHitResult_FaceIndex, CallFunc_BreakHitResult_TraceStart, CallFunc_BreakHitResult_TraceEnd);0x0147 if (!(CallFunc_BreakHitResult_bBlockingHit)) goto Label_039E;0x0155 BreakHitResult(WheelData.LastLongTrace, CallFunc_BreakHitResult_bBlockingHit, CallFunc_BreakHitResult_bInitialOverlap, CallFunc_BreakHitResult_Time, CallFunc_BreakHitResult_Distance, CallFunc_BreakHitResult_Location, CallFunc_BreakHitResult_ImpactPoint, CallFunc_BreakHitResult_Normal, CallFunc_BreakHitResult_ImpactNormal, CallFunc_BreakHitResult_PhysMat, CallFunc_BreakHitResult_HitActor, CallFunc_BreakHitResult_HitComponent, CallFunc_BreakHitResult_HitBoneName, CallFunc_BreakHitResult_BoneName, CallFunc_BreakHitResult_HitItem, CallFunc_BreakHitResult_ElementIndex, CallFunc_BreakHitResult_FaceIndex, CallFunc_BreakHitResult_TraceStart, CallFunc_BreakHitResult_TraceEnd);0x0213 LocalUDW.Check Point for Puddles Snow Or Dust(CallFunc_BreakHitResult_Location, CallFunc_BreakHitResult_Normal, CallFunc_BreakHitResult_PhysMat, CallFunc_Check_Point_for_Puddles_Snow_Or_Dust_Puddle_Depth, CallFunc_Check_Point_for_Puddles_Snow_Or_Dust_Snow_Depth, CallFunc_Check_Point_for_Puddles_Snow_Or_Dust_Dust_Depth);0x026D CallFunc_Greater_DoubleDouble_ReturnValue_1 = Greater_DoubleDouble(CallFunc_Check_Point_for_Puddles_Snow_Or_Dust_Snow_Depth, 0.4);0x0293 if (!(CallFunc_Greater_DoubleDouble_ReturnValue_1)) goto Label_039E;0x02A1 BreakHitResult(WheelData.LastLongTrace, CallFunc_BreakHitResult_bBlockingHit, CallFunc_BreakHitResult_bInitialOverlap, CallFunc_BreakHitResult_Time, CallFunc_BreakHitResult_Distance, CallFunc_BreakHitResult_Location, CallFunc_BreakHitResult_ImpactPoint, CallFunc_BreakHitResult_Normal, CallFunc_BreakHitResult_ImpactNormal, CallFunc_BreakHitResult_PhysMat, CallFunc_BreakHitResult_HitActor, CallFunc_BreakHitResult_HitComponent, CallFunc_BreakHitResult_HitBoneName, CallFunc_BreakHitResult_BoneName, CallFunc_BreakHitResult_HitItem, CallFunc_BreakHitResult_ElementIndex, CallFunc_BreakHitResult_FaceIndex, CallFunc_BreakHitResult_TraceStart, CallFunc_BreakHitResult_TraceEnd);0x035F LocalUDW.Compress DLWE Snow/Dust(CallFunc_BreakHitResult_Location, 50, 1);0x039E Label_039E:0x039E return;Public 0x147c170 0x00 void Cheat_WearDownIceStuds () Script9 statements · 149 bytes of bytecode 0x0000 CallFunc_GetOwner_ReturnValue = GetOwner();0x0014 CallFunc_HasAuthority_ReturnValue = CallFunc_GetOwner_ReturnValue.HasAuthority();0x003E if (!(CallFunc_HasAuthority_ReturnValue)) goto Label_0092;0x004C IceGripValue = 0;0x0067 MarkPropertyDirtyFromRepIndex(this, 20, FName(IceGripValue));0x0084 OnRep_IceGripValue();0x0092 Label_0092:0x0092 return;Public 0x147c170 0x00 void ApplyWheelModifiers (TArray<FTagFloatPair > & WheelModifiers ) Script14 statements · 368 bytes of bytecode 0x0000 CallFunc_GetOwner_ReturnValue = GetOwner();0x0014 CallFunc_HasAuthority_ReturnValue = CallFunc_GetOwner_ReturnValue.HasAuthority();0x003E if (!(CallFunc_HasAuthority_ReturnValue)) goto Label_016D;0x004C CallFunc_FindTagValue_Float_ReturnValue = FindTagValue_Float(WheelModifiers, GameplayTag{FName(WheelModifier.Stud)}, CallFunc_FindTagValue_Float_out_value);0x008D if (!(CallFunc_FindTagValue_Float_ReturnValue)) goto Label_016D;0x009B CallFunc_FindTagValue_Float_ReturnValue = FindTagValue_Float(WheelModifiers, GameplayTag{FName(WheelModifier.Stud)}, CallFunc_FindTagValue_Float_out_value);0x00DC CallFunc_FMax_A_ImplicitCast = Cast<4>(CallFunc_FindTagValue_Float_out_value);0x00F9 CallFunc_FMax_ReturnValue = FMax(CallFunc_FMax_A_ImplicitCast, IceGripValue);0x0127 IceGripValue = CallFunc_FMax_ReturnValue;0x0142 MarkPropertyDirtyFromRepIndex(this, 20, FName(IceGripValue));0x015F OnRep_IceGripValue();0x016D Label_016D:0x016D return;Public 0x147c170 0x10 void OnRep_AppliedWheelPhysMat () Script3 statements · 48 bytes of bytecode 0x0000 WheelMeshComponent.SetPhysMaterialOverride(AppliedWheelPhysMat);0x002D return;0x147c170 0x00 void OnRep_IceGripValue () Script14 statements · 337 bytes of bytecode 0x0000 Temp_object_Variable = /Game/Ride/Vehicle/Tire/Ice_Wheel.Ice_Wheel;0x0013 Temp_object_Variable_1 = /Game/Ride/Vehicle/Tire/Monster_Wheel.Monster_Wheel;0x0026 CallFunc_Greater_DoubleDouble_ReturnValue = Greater_DoubleDouble(IceGripValue, 0);0x004C Temp_bool_Variable = CallFunc_Greater_DoubleDouble_ReturnValue;0x005F LocalSelectedMesh = Switch(Temp_bool_Variable, false => Temp_object_Variable_1, true => Temp_object_Variable, default => K2Node_Select_Default);0x009E K2Node_DynamicCast_AsStatic_Mesh_Component = Cast<StaticMeshComponent>(WheelMeshComponent);0x00C2 K2Node_DynamicCast_bSuccess = Cast<1>(K2Node_DynamicCast_AsStatic_Mesh_Component);0x00DF if (!(K2Node_DynamicCast_bSuccess)) goto Label_014E;0x00ED CallFunc_NotEqual_ObjectObject_ReturnValue = NotEqual_ObjectObject(LocalSelectedMesh, K2Node_DynamicCast_AsStatic_Mesh_Component.StaticMesh);0x0129 if (!(CallFunc_NotEqual_ObjectObject_ReturnValue)) goto Label_014E;0x0137 ChangeStaticMesh(LocalSelectedMesh);0x014E Label_014E:0x014E return;0x147c170 0x00 void GetWheelStatus (const UPhysicalMaterial * & AppliedPhysMat , const double & IceStudsValue ) Script4 statements · 49 bytes of bytecode 0x0000 AppliedPhysMat = AppliedWheelPhysMat;0x0013 IceStudsValue = IceGripValue;0x002E return;Public 0x147c170 0x10 void UpdatePhysMatFromTrace (double DeltaTime ) Script51 statements · 1,084 bytes of bytecode 0x0000 LocalPhysMat = /VehicleSystemPlugin/VehicleAssets/PhysMat/Tire_HighFriction.Tire_HighFriction;0x0013 CallFunc_GetOwner_ReturnValue = GetOwner();0x0027 CallFunc_HasAuthority_ReturnValue = CallFunc_GetOwner_ReturnValue.HasAuthority();0x0051 if (!(CallFunc_HasAuthority_ReturnValue)) goto Label_0439;0x005F CallFunc_Greater_DoubleDouble_ReturnValue = Greater_DoubleDouble(IceGripValue, 0);0x0085 if (!(CallFunc_Greater_DoubleDouble_ReturnValue)) goto Label_0148;0x0093 Label_0093:0x0093 LocalPhysMat = /VehicleSystemPlugin/VehicleAssets/PhysMat/Tire_HighFriction.Tire_HighFriction;0x00A6 Label_00A6:0x00A6 CallFunc_IsValid_ReturnValue = IsValid(LocalPhysMat);0x00C3 if (!(CallFunc_IsValid_ReturnValue)) goto Label_0439;0x00D1 CallFunc_NotEqual_ObjectObject_ReturnValue = NotEqual_ObjectObject(LocalPhysMat, AppliedWheelPhysMat);0x00F7 if (!(CallFunc_NotEqual_ObjectObject_ReturnValue)) goto Label_0439;0x0105 AppliedWheelPhysMat = LocalPhysMat;0x0118 MarkPropertyDirtyFromRepIndex(this, 21, FName(AppliedWheelPhysMat));0x0135 OnRep_AppliedWheelPhysMat();0x0143 goto Label_0439;0x0148 Label_0148:0x0148 BreakHitResult(WheelData.LastTrace, CallFunc_BreakHitResult_bBlockingHit, CallFunc_BreakHitResult_bInitialOverlap, CallFunc_BreakHitResult_Time, CallFunc_BreakHitResult_Distance, CallFunc_BreakHitResult_Location, CallFunc_BreakHitResult_ImpactPoint, CallFunc_BreakHitResult_Normal, CallFunc_BreakHitResult_ImpactNormal, CallFunc_BreakHitResult_PhysMat, CallFunc_BreakHitResult_HitActor, CallFunc_BreakHitResult_HitComponent, CallFunc_BreakHitResult_HitBoneName, CallFunc_BreakHitResult_BoneName, CallFunc_BreakHitResult_HitItem, CallFunc_BreakHitResult_ElementIndex, CallFunc_BreakHitResult_FaceIndex, CallFunc_BreakHitResult_TraceStart, CallFunc_BreakHitResult_TraceEnd);0x0206 if (!(CallFunc_BreakHitResult_bBlockingHit)) goto Label_0439;0x0214 CallFunc_GetSurfaceType_ReturnValue = GetSurfaceType(WheelData.LastTrace);0x0242 K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 0);0x0261 if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0093;0x026F K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 1);0x028E if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0093;0x029C K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 2);0x02BB if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0093;0x02C9 K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 3);0x02E8 if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0093;0x02F6 K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 4);0x0315 if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0093;0x0323 K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 5);0x0342 if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0093;0x0350 K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 6);0x036F if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0093;0x037D K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 7);0x039C if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0409;0x03AA K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 8);0x03C9 if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0093;0x03D7 K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 9);0x03F6 if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0421;0x0404 goto Label_0439;0x0409 Label_0409:0x0409 LocalPhysMat = /Game/Ride/Interactables/Hazards/Tire_IceFriction.Tire_IceFriction;0x041C goto Label_00A6;0x0421 Label_0421:0x0421 LocalPhysMat = /VehicleSystemPlugin/VehicleAssets/PhysMat/Tire_MudFriction.Tire_MudFriction;0x0434 goto Label_00A6;0x0439 Label_0439:0x0439 return;Public 0x147c170 0x08 void WearDownIceStuds (double DeltaTime ) Script2 statements · 3 bytes of bytecode Public 0x147c170 0x08 void CheckAllScrewsValid (const bool & AllIsValid ) Script25 statements · 401 bytes of bytecode 0x0000 PushFlow(Label_018E);0x0005 Temp_int_Loop_Counter_Variable = 0;0x001C Temp_int_Array_Index_Variable = 0;0x0033 Label_0033:0x0033 CallFunc_Array_Length_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Length(ScrewHoles);0x006E CallFunc_Less_IntInt_ReturnValue = Less_IntInt(Temp_int_Loop_Counter_Variable, CallFunc_Array_Length_ReturnValue);0x0094 if (!(CallFunc_Less_IntInt_ReturnValue)) goto Label_0129;0x00A2 Temp_int_Array_Index_Variable = Temp_int_Loop_Counter_Variable;0x00BD PushFlow(Label_0139);0x00C2 /Script/Engine.Default__KismetArrayLibrary.Array_Get(ScrewHoles, Temp_int_Array_Index_Variable, CallFunc_Array_Get_Item);0x00FD CallFunc_IsValid_ReturnValue = IsValid(CallFunc_Array_Get_Item);0x011A if (!(CallFunc_IsValid_ReturnValue)) goto Label_0183;0x0128 PopFlow();0x0129 Label_0129:0x0129 AllIsValid = true;0x0134 goto Label_018E;0x0139 Label_0139:0x0139 CallFunc_Add_IntInt_ReturnValue = Add_IntInt(Temp_int_Loop_Counter_Variable, 1);0x0163 Temp_int_Loop_Counter_Variable = CallFunc_Add_IntInt_ReturnValue;0x017E goto Label_0033;0x0183 Label_0183:0x0183 AllIsValid = false;0x018E Label_018E:0x018E return;Public 0x147c170 0x01 void OnRep_ScrewDamage () Script2 statements · 3 bytes of bytecode 0x147c170 0x00 void TakeScrewDamage (TArray<int32> & ScrewDamage ) Script2 statements · 3 bytes of bytecode Public 0x147c170 0x10 void SetupScrews () Script42 statements · 1,415 bytes of bytecode 0x0000 PushFlow(Label_0584);0x0005 Temp_int_Loop_Counter_Variable = 0;0x001C Temp_int_Array_Index_Variable = 0;0x0033 Label_0033:0x0033 CallFunc_Array_Length_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Length(ScrewHoleLocations);0x006E CallFunc_Less_IntInt_ReturnValue = Less_IntInt(Temp_int_Loop_Counter_Variable, CallFunc_Array_Length_ReturnValue);0x0094 if (!(CallFunc_Less_IntInt_ReturnValue)) PopFlow();0x009E Temp_int_Array_Index_Variable = Temp_int_Loop_Counter_Variable;0x00B9 PushFlow(Label_053A);0x00BE /Script/Engine.Default__KismetArrayLibrary.Array_Get(ScrewHoleLocations, Temp_int_Array_Index_Variable, CallFunc_Array_Get_Item);0x00F9 CallFunc_K2_GetComponentToWorld_ReturnValue = K2_GetComponentToWorld();0x0115 BreakTransform(CallFunc_K2_GetComponentToWorld_ReturnValue, CallFunc_BreakTransform_Location, CallFunc_BreakTransform_Rotation, CallFunc_BreakTransform_Scale);0x0143 CallFunc_GetRightVector_ReturnValue = GetRightVector(CallFunc_BreakTransform_Rotation);0x0168 CallFunc_InverseTransformLocation_ReturnValue = InverseTransformLocation(CallFunc_K2_GetComponentToWorld_ReturnValue, CallFunc_BreakTransform_Location);0x0196 CallFunc_MakeRotFromX_ReturnValue = MakeRotFromX(CallFunc_GetRightVector_ReturnValue);0x01BB CallFunc_Add_VectorVector_ReturnValue = Add_VectorVector(CallFunc_InverseTransformLocation_ReturnValue, CallFunc_Array_Get_Item);0x01E9 CallFunc_TransformLocation_ReturnValue = TransformLocation(CallFunc_K2_GetComponentToWorld_ReturnValue, CallFunc_Add_VectorVector_ReturnValue);0x0217 CallFunc_MakeTransform_ReturnValue = MakeTransform(CallFunc_TransformLocation_ReturnValue, CallFunc_MakeRotFromX_ReturnValue, CallFunc_BreakTransform_Scale);0x024E CallFunc_BeginDeferredActorSpawnFromClass_ReturnValue = BeginDeferredActorSpawnFromClass(this, /Game/Ride/Interactables/Screw/BP_ScrewHole.BP_ScrewHole_C, CallFunc_MakeTransform_ReturnValue, 0, nullptr, 1);0x027A SetObjectPropertyByName(CallFunc_BeginDeferredActorSpawnFromClass_ReturnValue, FName(Wheel), this);0x029B /Script/Engine.Default__KismetArrayLibrary.Array_Get(ScrewHoleLocations, Temp_int_Array_Index_Variable, CallFunc_Array_Get_Item);0x02D6 CallFunc_K2_GetComponentToWorld_ReturnValue = K2_GetComponentToWorld();0x02F2 BreakTransform(CallFunc_K2_GetComponentToWorld_ReturnValue, CallFunc_BreakTransform_Location, CallFunc_BreakTransform_Rotation, CallFunc_BreakTransform_Scale);0x0320 CallFunc_GetRightVector_ReturnValue = GetRightVector(CallFunc_BreakTransform_Rotation);0x0345 CallFunc_InverseTransformLocation_ReturnValue = InverseTransformLocation(CallFunc_K2_GetComponentToWorld_ReturnValue, CallFunc_BreakTransform_Location);0x0373 CallFunc_MakeRotFromX_ReturnValue = MakeRotFromX(CallFunc_GetRightVector_ReturnValue);0x0398 CallFunc_Add_VectorVector_ReturnValue = Add_VectorVector(CallFunc_InverseTransformLocation_ReturnValue, CallFunc_Array_Get_Item);0x03C6 CallFunc_TransformLocation_ReturnValue = TransformLocation(CallFunc_K2_GetComponentToWorld_ReturnValue, CallFunc_Add_VectorVector_ReturnValue);0x03F4 CallFunc_MakeTransform_ReturnValue = MakeTransform(CallFunc_TransformLocation_ReturnValue, CallFunc_MakeRotFromX_ReturnValue, CallFunc_BreakTransform_Scale);0x042B CallFunc_FinishSpawningActor_ReturnValue = FinishSpawningActor(CallFunc_BeginDeferredActorSpawnFromClass_ReturnValue, CallFunc_MakeTransform_ReturnValue, 1);0x0453 CallFunc_Array_Add_ReturnValue_1 = /Script/Engine.Default__KismetArrayLibrary.Array_Add(ScrewHoles, CallFunc_FinishSpawningActor_ReturnValue);0x0497 CallFunc_Array_Add_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Add(ScrewDamage, Temp_int_Variable);0x04DB GetWheelMesh(CallFunc_GetWheelMesh_WheelMesh);0x04F2 CallFunc_K2_AttachToComponent_ReturnValue = CallFunc_FinishSpawningActor_ReturnValue.K2_AttachToComponent(CallFunc_GetWheelMesh_WheelMesh, FName(None), 1, 1, 1, true);0x0539 PopFlow();0x053A Label_053A:0x053A CallFunc_Add_IntInt_ReturnValue = Add_IntInt(Temp_int_Loop_Counter_Variable, 1);0x0564 Temp_int_Loop_Counter_Variable = CallFunc_Add_IntInt_ReturnValue;0x057F goto Label_0033;0x0584 Label_0584:0x0584 return;Public 0x147c170 0x00 void TryPopOffWheel (const bool & PoppedOff ) Script27 statements · 534 bytes of bytecode 0x0000 PushFlow(Label_0213);0x0005 Temp_int_Loop_Counter_Variable = 0;0x001C Temp_int_Array_Index_Variable = 0;0x0033 Label_0033:0x0033 CallFunc_Array_Length_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Length(ScrewHoles);0x006E CallFunc_Less_IntInt_ReturnValue = Less_IntInt(Temp_int_Loop_Counter_Variable, CallFunc_Array_Length_ReturnValue);0x0094 if (!(CallFunc_Less_IntInt_ReturnValue)) goto Label_0153;0x00A2 Temp_int_Array_Index_Variable = Temp_int_Loop_Counter_Variable;0x00BD PushFlow(Label_01C9);0x00C2 /Script/Engine.Default__KismetArrayLibrary.Array_Get(ScrewHoles, Temp_int_Array_Index_Variable, CallFunc_Array_Get_Item);0x00FD CallFunc_Greater_DoubleDouble_ReturnValue = Greater_DoubleDouble(CallFunc_Array_Get_Item.ScrewAmount, 0);0x0139 if (!(CallFunc_Greater_DoubleDouble_ReturnValue)) PopFlow();0x0143 PoppedOff = false;0x014E goto Label_0213;0x0153 Label_0153:0x0153 K2Node_DynamicCast_AsBP_Vehicle_Winnebago_01 = Cast<BP_Vehicle_Winnebago_01_C>(Vehicle);0x0177 K2Node_DynamicCast_bSuccess = Cast<1>(K2Node_DynamicCast_AsBP_Vehicle_Winnebago_01);0x0194 K2Node_DynamicCast_AsBP_Vehicle_Winnebago_01.Multicast_DetachWheel(this);0x01B9 PoppedOff = true;0x01C4 goto Label_0213;0x01C9 Label_01C9:0x01C9 CallFunc_Add_IntInt_ReturnValue = Add_IntInt(Temp_int_Loop_Counter_Variable, 1);0x01F3 Temp_int_Loop_Counter_Variable = CallFunc_Add_IntInt_ReturnValue;0x020E goto Label_0033;0x0213 Label_0213:0x0213 return;Public 0x147c170 0x01 void Update_WheelSuspension_Buffer () Script63 statements · 2,258 bytes of bytecode 0x0000 PushFlow(Label_08CF);0x0005 Vehicle.GetAirSpeed(CallFunc_GetAirSpeed_AirSpeed);0x0032 CallFunc_Greater_DoubleDouble_ReturnValue = Greater_DoubleDouble(CallFunc_GetAirSpeed_AirSpeed, 5);0x0058 if (!(CallFunc_Greater_DoubleDouble_ReturnValue)) PopFlow();0x0062 CallFunc_Less_DoubleDouble_A_ImplicitCast_1 = Cast<4>(WheelData.CurrentSpringLength);0x0088 CallFunc_Less_DoubleDouble_ReturnValue = Less_DoubleDouble(CallFunc_Less_DoubleDouble_A_ImplicitCast_1, 3);0x00AE if (!(CallFunc_Less_DoubleDouble_ReturnValue)) PopFlow();0x00B8 CallFunc_Less_DoubleDouble_A_ImplicitCast = Cast<4>(WheelData.CurrentSpringLength);0x00DE CallFunc_Less_DoubleDouble_ReturnValue_1 = Less_DoubleDouble(CallFunc_Less_DoubleDouble_A_ImplicitCast, 0.2);0x0104 if (!(CallFunc_Less_DoubleDouble_ReturnValue_1)) goto Label_026D;0x0112 PushFlow(Label_041D);0x0117 CallFunc_SpawnSoundAttached_ReturnValue_3 = SpawnSoundAttached(/Game/Ride/Audio/Metasounds/Vehicle/Suspension/MSS_Vehicle_Suspension_Impact_Hard.MSS_Vehicle_Suspension_Impact_Hard, this, FName(None), FVector(0, 0, 0), FRotator(0, 0, 0), 0, false, 1f, 1f, 0f, nullptr, nullptr, true);0x0189 CallFunc_GetWheelVelocity_ReturnValue = GetWheelVelocity(false);0x01A6 CallFunc_VSize_ReturnValue = VSize(CallFunc_GetWheelVelocity_ReturnValue);0x01CB CallFunc_MapRangeClamped_ReturnValue = MapRangeClamped(CallFunc_VSize_ReturnValue, 500, 2000, 0.4, 1);0x0214 CallFunc_SetFloatParameter_InFloat_ImplicitCast = Cast<3>(CallFunc_MapRangeClamped_ReturnValue);0x0231 CallFunc_SpawnSoundAttached_ReturnValue_3.SetFloatParameter(FName(Velocity), CallFunc_SetFloatParameter_InFloat_ImplicitCast);0x026C PopFlow();0x026D Label_026D:0x026D CallFunc_Greater_DoubleDouble_A_ImplicitCast = Cast<4>(WheelData.CurrentSpringLength);0x0293 CallFunc_Greater_DoubleDouble_ReturnValue_4 = Greater_DoubleDouble(CallFunc_Greater_DoubleDouble_A_ImplicitCast, 0.2);0x02B9 if (!(CallFunc_Greater_DoubleDouble_ReturnValue_4)) goto Label_02C7;0x02C7 Label_02C7:0x02C7 CallFunc_SpawnSoundAttached_ReturnValue_4 = SpawnSoundAttached(/Game/Ride/Audio/Metasounds/Vehicle/Suspension/MSS_Vehicle_Suspension_Impact_Light.MSS_Vehicle_Suspension_Impact_Light, this, FName(None), FVector(0, 0, 0), FRotator(0, 0, 0), 0, false, 1f, 1f, 0f, nullptr, nullptr, true);0x0339 CallFunc_GetWheelVelocity_ReturnValue_1 = GetWheelVelocity(false);0x0356 CallFunc_VSize_ReturnValue_1 = VSize(CallFunc_GetWheelVelocity_ReturnValue_1);0x037B CallFunc_MapRangeClamped_ReturnValue_1 = MapRangeClamped(CallFunc_VSize_ReturnValue_1, 500, 2000, 0.5, 1);0x03C4 CallFunc_SetFloatParameter_InFloat_ImplicitCast_1 = Cast<3>(CallFunc_MapRangeClamped_ReturnValue_1);0x03E1 CallFunc_SpawnSoundAttached_ReturnValue_4.SetFloatParameter(FName(Velocity), CallFunc_SetFloatParameter_InFloat_ImplicitCast_1);0x041C PopFlow();0x041D Label_041D:0x041D Vehicle.GetVehicleMesh(CallFunc_GetVehicleMesh_Mesh_2);0x044A CallFunc_GetComponentVelocity_ReturnValue = CallFunc_GetVehicleMesh_Mesh_2.GetComponentVelocity();0x0480 BreakVector(CallFunc_GetComponentVelocity_ReturnValue, CallFunc_BreakVector_X, CallFunc_BreakVector_Y, CallFunc_BreakVector_Z);0x04AE CallFunc_Abs_ReturnValue = Abs(CallFunc_BreakVector_Z);0x04D3 CallFunc_Greater_DoubleDouble_ReturnValue_2 = Greater_DoubleDouble(CallFunc_Abs_ReturnValue, 1000);0x04F9 if (!(CallFunc_Greater_DoubleDouble_ReturnValue_2)) goto Label_05AF;0x0507 Vehicle.GetVehicleMesh(CallFunc_GetVehicleMesh_Mesh_1);0x0534 CallFunc_SpawnSoundAttached_ReturnValue_1 = SpawnSoundAttached(/Game/Ride/Audio/Metasounds/Vehicle/Suspension/MSS_Vehicle_Suspension_BreakHit.MSS_Vehicle_Suspension_BreakHit, CallFunc_GetVehicleMesh_Mesh_1, FName(None), FVector(0, 0, 0), FRotator(0, 0, 0), 0, false, 1f, 1f, 0f, nullptr, nullptr, true);0x05AE PopFlow();0x05AF Label_05AF:0x05AF Vehicle.GetVehicleMesh(CallFunc_GetVehicleMesh_Mesh_2);0x05DC CallFunc_GetComponentVelocity_ReturnValue = CallFunc_GetVehicleMesh_Mesh_2.GetComponentVelocity();0x0612 BreakVector(CallFunc_GetComponentVelocity_ReturnValue, CallFunc_BreakVector_X, CallFunc_BreakVector_Y, CallFunc_BreakVector_Z);0x0640 CallFunc_Abs_ReturnValue = Abs(CallFunc_BreakVector_Z);0x0665 CallFunc_Greater_DoubleDouble_ReturnValue_1 = Greater_DoubleDouble(CallFunc_Abs_ReturnValue, 500);0x068B if (!(CallFunc_Greater_DoubleDouble_ReturnValue_1)) goto Label_0741;0x0699 Vehicle.GetVehicleMesh(CallFunc_GetVehicleMesh_Mesh);0x06C6 CallFunc_SpawnSoundAttached_ReturnValue = SpawnSoundAttached(/Game/Ride/Audio/Metasounds/Vehicle/Suspension/MSS_Vehicle_Suspension_HardHit.MSS_Vehicle_Suspension_HardHit, CallFunc_GetVehicleMesh_Mesh, FName(None), FVector(0, 0, 0), FRotator(0, 0, 0), 0, false, 1f, 1f, 0f, nullptr, nullptr, true);0x0740 PopFlow();0x0741 Label_0741:0x0741 Vehicle.GetVehicleMesh(CallFunc_GetVehicleMesh_Mesh_2);0x076E CallFunc_GetComponentVelocity_ReturnValue = CallFunc_GetVehicleMesh_Mesh_2.GetComponentVelocity();0x07A4 BreakVector(CallFunc_GetComponentVelocity_ReturnValue, CallFunc_BreakVector_X, CallFunc_BreakVector_Y, CallFunc_BreakVector_Z);0x07D2 CallFunc_Abs_ReturnValue = Abs(CallFunc_BreakVector_Z);0x07F7 CallFunc_Greater_DoubleDouble_ReturnValue_3 = Greater_DoubleDouble(CallFunc_Abs_ReturnValue, 200);0x081D if (!(CallFunc_Greater_DoubleDouble_ReturnValue_3)) PopFlow();0x0827 Vehicle.GetVehicleMesh(CallFunc_GetVehicleMesh_Mesh_3);0x0854 CallFunc_SpawnSoundAttached_ReturnValue_2 = SpawnSoundAttached(/Game/Ride/Audio/Metasounds/Vehicle/Suspension/MSS_Vehicle_Suspension_SoftHit.MSS_Vehicle_Suspension_SoftHit, CallFunc_GetVehicleMesh_Mesh_3, FName(None), FVector(0, 0, 0), FRotator(0, 0, 0), 0, false, 1f, 1f, 0f, nullptr, nullptr, true);0x08CE PopFlow();0x08CF Label_08CF:0x08CF return;Public 0x147c170 0x00 void Update_WheelSuspension_SFX () Script14 statements · 353 bytes of bytecode 0x0000 CallFunc_GetGameTimeInSeconds_ReturnValue_1 = GetGameTimeInSeconds(this);0x001D CallFunc_Add_DoubleDouble_ReturnValue = Add_DoubleDouble(LastSuspensionImpactInGameTime, 1);0x004B CallFunc_Greater_DoubleDouble_ReturnValue = Greater_DoubleDouble(CallFunc_GetGameTimeInSeconds_ReturnValue_1, CallFunc_Add_DoubleDouble_ReturnValue);0x0071 if (!(CallFunc_Greater_DoubleDouble_ReturnValue)) goto Label_015E;0x007F CallFunc_Less_DoubleDouble_A_ImplicitCast = Cast<4>(WheelData.CurrentSpringLength);0x00A5 CallFunc_Less_DoubleDouble_ReturnValue = Less_DoubleDouble(CallFunc_Less_DoubleDouble_A_ImplicitCast, 5);0x00CB if (!(CallFunc_Less_DoubleDouble_ReturnValue)) goto Label_015E;0x00D9 K2Node_CreateDelegate_OutputDelegate.Bind(this, Update_WheelSuspension_Buffer);0x00F0 CallFunc_K2_SetTimerDelegate_ReturnValue = K2_SetTimerDelegate(K2Node_CreateDelegate_OutputDelegate, 0.025f, false, false, 0f, 0f);0x0126 CallFunc_GetGameTimeInSeconds_ReturnValue = GetGameTimeInSeconds(this);0x0143 LastSuspensionImpactInGameTime = CallFunc_GetGameTimeInSeconds_ReturnValue;0x015E Label_015E:0x015E return;Public 0x147c170 0x00 void Update_WheelSkid_SFX () Script11 statements · 349 bytes of bytecode 0x0000 CallFunc_IsValid_ReturnValue = IsValid(RollingTireSFX);0x001D if (!(CallFunc_IsValid_ReturnValue)) goto Label_015A;0x002B GetRotationSpeed(CallFunc_GetRotationSpeed_RotationSpeed);0x0042 CallFunc_MapRangeClamped_ReturnValue = MapRangeClamped(CallFunc_GetRotationSpeed_RotationSpeed, 0, 60, 1.7, 1);0x008B CallFunc_MapRangeClamped_ReturnValue_1 = MapRangeClamped(DesiredSkid, 0, 500, 0, 1);0x00D4 CallFunc_Multiply_DoubleDouble_ReturnValue = Multiply_DoubleDouble(CallFunc_MapRangeClamped_ReturnValue_1, CallFunc_MapRangeClamped_ReturnValue);0x0102 CallFunc_SetFloatParameter_InFloat_ImplicitCast = Cast<3>(CallFunc_Multiply_DoubleDouble_ReturnValue);0x011F RollingTireSFX.SetFloatParameter(FName(SkidAmount), CallFunc_SetFloatParameter_InFloat_ImplicitCast);0x015A Label_015A:0x015A return;Public 0x147c170 0x00 void Update_WheelRolling_SFX () Script72 statements · 1,650 bytes of bytecode 0x0000 PushFlow(Label_066F);0x0005 CallFunc_IsValid_ReturnValue_1 = IsValid(RollingTireSFX);0x0022 if (!(CallFunc_IsValid_ReturnValue_1)) PopFlow();0x002C PushFlow(Label_020A);0x0031 PushFlow(Label_0151);0x0036 CallFunc_GetPhysicsVolume_ReturnValue = GetPhysicsVolume();0x004A CallFunc_IsValid_ReturnValue = IsValid(CallFunc_GetPhysicsVolume_ReturnValue);0x0067 if (!(CallFunc_IsValid_ReturnValue)) goto Label_0322;0x0075 CallFunc_GetPhysicsVolume_ReturnValue = GetPhysicsVolume();0x0089 if (!(CallFunc_GetPhysicsVolume_ReturnValue.bWaterVolume)) goto Label_0322;0x00AD CallFunc_NotEqual_DoubleDouble_ReturnValue = NotEqual_DoubleDouble(CurrentAudioSurfaceIndex, 2);0x00D3 if (!(CallFunc_NotEqual_DoubleDouble_ReturnValue)) PopFlow();0x00DD CurrentAudioSurfaceIndex = 2;0x00F8 CallFunc_SetFloatParameter_InFloat_ImplicitCast = Cast<3>(CurrentAudioSurfaceIndex);0x0115 RollingTireSFX.SetFloatParameter(FName(SurfaceIndex), CallFunc_SetFloatParameter_InFloat_ImplicitCast);0x0150 PopFlow();0x0151 Label_0151:0x0151 GetRotationSpeed(CallFunc_GetRotationSpeed_RotationSpeed);0x0168 CallFunc_MapRangeClamped_ReturnValue = MapRangeClamped(CallFunc_GetRotationSpeed_RotationSpeed, 0, 60, 0, 1);0x01B1 CallFunc_SetFloatParameter_InFloat_ImplicitCast_3 = Cast<3>(CallFunc_MapRangeClamped_ReturnValue);0x01CE RollingTireSFX.SetFloatParameter(FName(Speed), CallFunc_SetFloatParameter_InFloat_ImplicitCast_3);0x0209 PopFlow();0x020A Label_020A:0x020A GetSpringLength(CallFunc_GetSpringLength_SpringLength);0x0221 CallFunc_EqualEqual_DoubleDouble_A_ImplicitCast = Cast<4>(WheelData.CurrentSpringLength);0x0247 CallFunc_EqualEqual_DoubleDouble_ReturnValue = EqualEqual_DoubleDouble(CallFunc_EqualEqual_DoubleDouble_A_ImplicitCast, CallFunc_GetSpringLength_SpringLength);0x026D if (!(CallFunc_EqualEqual_DoubleDouble_ReturnValue)) goto Label_02D1;0x027B if (!(IsWheelInAir)) goto Label_028A;0x0289 PopFlow();0x028A Label_028A:0x028A IsWheelInAir = true;0x0295 RollingTireSFX.SetBoolParameter(FName(IsInAir), IsWheelInAir);0x02D0 PopFlow();0x02D1 Label_02D1:0x02D1 if (!(IsWheelInAir)) PopFlow();0x02DB IsWheelInAir = false;0x02E6 RollingTireSFX.SetBoolParameter(FName(IsInAir), IsWheelInAir);0x0321 PopFlow();0x0322 Label_0322:0x0322 BreakHitResult(WheelData.LastTrace, CallFunc_BreakHitResult_bBlockingHit, CallFunc_BreakHitResult_bInitialOverlap, CallFunc_BreakHitResult_Time, CallFunc_BreakHitResult_Distance, CallFunc_BreakHitResult_Location, CallFunc_BreakHitResult_ImpactPoint, CallFunc_BreakHitResult_Normal, CallFunc_BreakHitResult_ImpactNormal, CallFunc_BreakHitResult_PhysMat, CallFunc_BreakHitResult_HitActor, CallFunc_BreakHitResult_HitComponent, CallFunc_BreakHitResult_HitBoneName, CallFunc_BreakHitResult_BoneName, CallFunc_BreakHitResult_HitItem, CallFunc_BreakHitResult_ElementIndex, CallFunc_BreakHitResult_FaceIndex, CallFunc_BreakHitResult_TraceStart, CallFunc_BreakHitResult_TraceEnd);0x03E0 if (!(CallFunc_BreakHitResult_bBlockingHit)) PopFlow();0x03EA CallFunc_GetSurfaceType_ReturnValue = GetSurfaceType(WheelData.LastTrace);0x0418 K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 0);0x0437 if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_05CB;0x0445 K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 1);0x0464 if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0527;0x0472 K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 2);0x0491 if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0527;0x049F K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 3);0x04BE if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_05CB;0x04CC K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 4);0x04EB if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_05CB;0x04F9 K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetSurfaceType_ReturnValue, 5);0x0518 if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0527;0x0526 PopFlow();0x0527 Label_0527:0x0527 CallFunc_NotEqual_DoubleDouble_ReturnValue_1 = NotEqual_DoubleDouble(CurrentAudioSurfaceIndex, 1);0x054D if (!(CallFunc_NotEqual_DoubleDouble_ReturnValue_1)) PopFlow();0x0557 CurrentAudioSurfaceIndex = 1;0x0572 CallFunc_SetFloatParameter_InFloat_ImplicitCast_2 = Cast<3>(CurrentAudioSurfaceIndex);0x058F RollingTireSFX.SetFloatParameter(FName(SurfaceIndex), CallFunc_SetFloatParameter_InFloat_ImplicitCast_2);0x05CA PopFlow();0x05CB Label_05CB:0x05CB CallFunc_NotEqual_DoubleDouble_ReturnValue_2 = NotEqual_DoubleDouble(CurrentAudioSurfaceIndex, 0);0x05F1 if (!(CallFunc_NotEqual_DoubleDouble_ReturnValue_2)) PopFlow();0x05FB CurrentAudioSurfaceIndex = 0;0x0616 CallFunc_SetFloatParameter_InFloat_ImplicitCast_1 = Cast<3>(CurrentAudioSurfaceIndex);0x0633 RollingTireSFX.SetFloatParameter(FName(SurfaceIndex), CallFunc_SetFloatParameter_InFloat_ImplicitCast_1);0x066E PopFlow();0x066F Label_066F:0x066F return;Public 0x147c170 0x00 void HealWheelDamage (bool NewParam ) Script2 statements · 3 bytes of bytecode Public 0x147c170 0x01 void TakeWheelDamage (int32 WheelDamage ) Script59 statements · 1,638 bytes of bytecode 0x0000 PushFlow(Label_0663);0x0005 CallFunc_Abs_Int_ReturnValue = Abs_Int(WheelDamage);0x002A DamageMade = CallFunc_Abs_Int_ReturnValue;0x0045 TempScrewHealth = ScrewDamage;0x0060 Temp_int_Loop_Counter_Variable = 0;0x0077 Temp_int_Array_Index_Variable = 0;0x008E Label_008E:0x008E CallFunc_Array_Length_ReturnValue_1 = /Script/Engine.Default__KismetArrayLibrary.Array_Length(TempScrewHealth);0x00C9 CallFunc_Less_IntInt_ReturnValue_2 = Less_IntInt(Temp_int_Loop_Counter_Variable, CallFunc_Array_Length_ReturnValue_1);0x00EF if (!(CallFunc_Less_IntInt_ReturnValue_2)) goto Label_03BE;0x00FD Temp_int_Array_Index_Variable = Temp_int_Loop_Counter_Variable;0x0118 PushFlow(Label_0619);0x011D CallFunc_Greater_IntInt_ReturnValue = Greater_IntInt(DamageMade, 0);0x013F if (!(CallFunc_Greater_IntInt_ReturnValue)) PopFlow();0x0149 /Script/Engine.Default__KismetArrayLibrary.Array_Get(TempScrewHealth, Temp_int_Array_Index_Variable, CallFunc_Array_Get_Item_2);0x0184 CallFunc_Less_IntInt_ReturnValue_1 = Less_IntInt(CallFunc_Array_Get_Item_2, 5);0x01A6 if (!(CallFunc_Less_IntInt_ReturnValue_1)) PopFlow();0x01B0 /Script/Engine.Default__KismetArrayLibrary.Array_Get(TempScrewHealth, Temp_int_Array_Index_Variable, CallFunc_Array_Get_Item_2);0x01EB CurrentScrewDamage = CallFunc_Array_Get_Item_2;0x0206 CallFunc_Clamp_ReturnValue = Clamp(DamageMade, 0, 5);0x0235 CallFunc_Subtract_IntInt_ReturnValue = Subtract_IntInt(CurrentScrewDamage, CallFunc_Clamp_ReturnValue);0x0263 CallFunc_Abs_Int_ReturnValue_1 = Abs_Int(CallFunc_Subtract_IntInt_ReturnValue);0x0288 CallFunc_Add_IntInt_ReturnValue_2 = Add_IntInt(CurrentScrewDamage, CallFunc_Abs_Int_ReturnValue_1);0x02B6 /Script/Engine.Default__KismetArrayLibrary.Array_Set(TempScrewHealth, Temp_int_Array_Index_Variable, CallFunc_Add_IntInt_ReturnValue_2, false);0x02F2 CallFunc_Clamp_ReturnValue = Clamp(DamageMade, 0, 5);0x0321 CallFunc_Subtract_IntInt_ReturnValue = Subtract_IntInt(CurrentScrewDamage, CallFunc_Clamp_ReturnValue);0x034F CallFunc_Abs_Int_ReturnValue_1 = Abs_Int(CallFunc_Subtract_IntInt_ReturnValue);0x0374 CallFunc_Subtract_IntInt_ReturnValue_1 = Subtract_IntInt(DamageMade, CallFunc_Abs_Int_ReturnValue_1);0x03A2 DamageMade = CallFunc_Subtract_IntInt_ReturnValue_1;0x03BD PopFlow();0x03BE Label_03BE:0x03BE ScrewDamage = TempScrewHealth;0x03D9 MarkPropertyDirtyFromRepIndex(this, 19, FName(ScrewDamage));0x03F6 OnRep_ScrewDamage();0x0404 Temp_int_Loop_Counter_Variable_1 = 0;0x041B Temp_int_Array_Index_Variable_1 = 0;0x0432 Label_0432:0x0432 CallFunc_Array_Length_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Length(ScrewHoles);0x046D CallFunc_Less_IntInt_ReturnValue = Less_IntInt(Temp_int_Loop_Counter_Variable_1, CallFunc_Array_Length_ReturnValue);0x0493 if (!(CallFunc_Less_IntInt_ReturnValue)) PopFlow();0x049D Temp_int_Array_Index_Variable_1 = Temp_int_Loop_Counter_Variable_1;0x04B8 PushFlow(Label_05CF);0x04BD /Script/Engine.Default__KismetArrayLibrary.Array_Get(ScrewHoles, Temp_int_Array_Index_Variable_1, CallFunc_Array_Get_Item);0x04F8 /Script/Engine.Default__KismetArrayLibrary.Array_Get(ScrewDamage, Temp_int_Array_Index_Variable_1, CallFunc_Array_Get_Item_1);0x0533 CallFunc_Conv_IntToDouble_ReturnValue = Conv_IntToDouble(CallFunc_Array_Get_Item_1);0x0558 CallFunc_MapRangeClamped_ReturnValue = MapRangeClamped(CallFunc_Conv_IntToDouble_ReturnValue, 0, 5, 1, 0);0x05A1 CallFunc_Array_Get_Item.UpdateScrewAmountFromDamage(CallFunc_MapRangeClamped_ReturnValue);0x05CE PopFlow();0x05CF Label_05CF:0x05CF CallFunc_Add_IntInt_ReturnValue_1 = Add_IntInt(Temp_int_Loop_Counter_Variable_1, 1);0x05F9 Temp_int_Loop_Counter_Variable_1 = CallFunc_Add_IntInt_ReturnValue_1;0x0614 goto Label_0432;0x0619 Label_0619:0x0619 CallFunc_Add_IntInt_ReturnValue = Add_IntInt(Temp_int_Loop_Counter_Variable, 1);0x0643 Temp_int_Loop_Counter_Variable = CallFunc_Add_IntInt_ReturnValue;0x065E goto Label_008E;0x0663 Label_0663:0x0663 return;Public 0x147c170 0x04 void Init_VFX_SmokeTrail () Script9 statements · 236 bytes of bytecode 0x0000 CallFunc_IsDedicatedServer_ReturnValue = IsDedicatedServer(this);0x0015 CallFunc_Not_PreBool_ReturnValue = Not_PreBool(CallFunc_IsDedicatedServer_ReturnValue);0x0032 if (!(CallFunc_Not_PreBool_ReturnValue)) goto Label_00E9;0x0040 CallFunc_SpawnSystemAttached_ReturnValue = SpawnSystemAttached(/Game/Ride/VFX/Truck/Tires/NS_Tire_Dirt_01.NS_Tire_Dirt_01, this, FName(None), FVector(0, 0, 0), FRotator(0, 0, 0), 2, false, true, 0, true);0x00A4 SmokeTrail = CallFunc_SpawnSystemAttached_ReturnValue;0x00B7 SmokeTrail.SetVariableFloat(FName(Speed), 0f);0x00E9 Label_00E9:0x00E9 return;Public 0x147c170 0x00 void Update_VFX_SmokeTrail () Script19 statements · 421 bytes of bytecode 0x0000 CallFunc_IsDedicatedServer_ReturnValue = IsDedicatedServer(this);0x0015 CallFunc_Not_PreBool_ReturnValue = Not_PreBool(CallFunc_IsDedicatedServer_ReturnValue);0x0032 if (!(CallFunc_Not_PreBool_ReturnValue)) goto Label_01A2;0x0040 Vehicle.GetAirSpeed(CallFunc_GetAirSpeed_AirSpeed);0x006D CallFunc_Greater_DoubleDouble_ReturnValue_1 = Greater_DoubleDouble(CallFunc_GetAirSpeed_AirSpeed, 2);0x0093 if (!(CallFunc_Greater_DoubleDouble_ReturnValue_1)) goto Label_0139;0x00A1 Vehicle.GetAirSpeed(CallFunc_GetAirSpeed_AirSpeed);0x00CE CallFunc_Greater_DoubleDouble_ReturnValue = Greater_DoubleDouble(CallFunc_GetAirSpeed_AirSpeed, 10);0x00F4 if (!(CallFunc_Greater_DoubleDouble_ReturnValue)) goto Label_0170;0x0102 SmokeTrail.SetVariableFloat(FName(Speed), 1f);0x0134 goto Label_01A2;0x0139 Label_0139:0x0139 SmokeTrail.SetVariableFloat(FName(Speed), 0f);0x016B goto Label_01A2;0x0170 Label_0170:0x0170 SmokeTrail.SetVariableFloat(FName(Speed), 0.3f);0x01A2 Label_01A2:0x01A2 return;Public 0x147c170 0x00 void SetWheelMode (const EWheelMode & NewMode ) Script11 statements · 203 bytes of bytecode 0x0000 SetWheelMode(NewMode);0x0013 UpdateConstraints();0x0021 CallFunc_GetIsSimulatingSuspension_ReturnValue = GetIsSimulatingSuspension();0x0035 SetPhysics(CallFunc_GetIsSimulatingSuspension_ReturnValue);0x004C InitBonePhysics();0x005A CallFunc_IsSimulatingPhysics_ReturnValue = WheelMeshComponent.IsSimulatingPhysics(FName(None));0x0095 if (!(CallFunc_IsSimulatingPhysics_ReturnValue)) goto Label_00C8;0x00A3 AVS_SetWheelAngularVelocity(WheelMeshComponent, WheelData.AngularVelocity);0x00C8 Label_00C8:0x00C8 return;Event Public 0x147c170 0x01 void SetSuspensionPreview (bool Preview ) Script3 statements · 31 bytes of bytecode 0x0000 WheelConfig.EditorPreview = Preview;0x001C return;Public 0x147c170 0x01 void GetSuspensionPreview (const bool & EditorPreview ) Script3 statements · 31 bytes of bytecode 0x0000 EditorPreview = WheelConfig.EditorPreview;0x001C return;Public 0x147c170 0x01 void GetRollingResistance (const double & RollingResistance ) Script4 statements · 68 bytes of bytecode 0x0000 K2Node_FunctionResult_RollingResistance_ImplicitCast = Cast<4>(WheelConfig.RollingResistance);0x0026 RollingResistance = K2Node_FunctionResult_RollingResistance_ImplicitCast;0x0041 return;Public 0x147c170 0x08 void GetWheelRadius (const double & WheelRadius ) Script4 statements · 68 bytes of bytecode 0x0000 K2Node_FunctionResult_WheelRadius_ImplicitCast = Cast<4>(WheelConfig.WheelRadius);0x0026 WheelRadius = K2Node_FunctionResult_WheelRadius_ImplicitCast;0x0041 return;Public 0x147c170 0x08 void SetSpringDownforce (float SpringDownforce ) Script5 statements · 73 bytes of bytecode 0x0000 K2Node_VariableSet_PhysicsDownforce_ImplicitCast = Cast<4>(SpringDownforce);0x001D PhysicsDownforce = K2Node_VariableSet_PhysicsDownforce_ImplicitCast;0x0038 UpdateConstraints();0x0046 return;Public 0x147c170 0x04 void SetSpringDamping (float SpringDamping ) Script4 statements · 53 bytes of bytecode 0x0000 WheelConfig.SpringDamping = SpringDamping;0x0024 UpdateConstraints();0x0032 return;Public 0x147c170 0x04 void SetSpringStrength (float SpringStrength ) Script4 statements · 53 bytes of bytecode 0x0000 WheelConfig.SpringStrength = SpringStrength;0x0024 UpdateConstraints();0x0032 return;Public 0x147c170 0x04 void SetSpringLength (float SpringLength ) Script3 statements · 39 bytes of bytecode 0x0000 WheelConfig.SpringLength = SpringLength;0x0024 return;Public 0x147c170 0x04 void SetSuspensionSettings (float Spring Length , float Spring Strength , float Spring Damping ) Script5 statements · 111 bytes of bytecode 0x0000 WheelConfig.SpringLength = Spring Length;0x0024 WheelConfig.SpringStrength = Spring Strength;0x0048 WheelConfig.SpringDamping = Spring Damping;0x006C return;Public 0x147c170 0x0C void GetSpringLength (const double & SpringLength ) Script4 statements · 68 bytes of bytecode 0x0000 K2Node_FunctionResult_SpringLength_ImplicitCast = Cast<4>(WheelConfig.SpringLength);0x0026 SpringLength = K2Node_FunctionResult_SpringLength_ImplicitCast;0x0041 return;Public 0x147c170 0x08 void GetInvertTorque (const bool & isInvertedTorque ) Script3 statements · 31 bytes of bytecode 0x0000 isInvertedTorque = WheelConfig.InvertTorque;0x001C return;Public 0x147c170 0x01 void GetBrakePressure (const double & BrakePressure ) Script3 statements · 30 bytes of bytecode 0x0000 BrakePressure = 0;0x001B return;Public 0x147c170 0x08 void GetIsSteerableWheel (const bool & IsSteerableWheel ) Script3 statements · 31 bytes of bytecode 0x0000 IsSteerableWheel = WheelConfig.IsSteerableWheel;0x001C return;Public 0x147c170 0x01 void GetIsDrivingWheel (const bool & IsDrivingWheel ) Script3 statements · 31 bytes of bytecode 0x0000 IsDrivingWheel = WheelConfig.IsDrivingWheel;0x001C return;Public 0x147c170 0x01 void GetSuspensionSettings (const float & SpringLength , const float & SpringStrength , const float & SpringDamping , const double & PhysicsDownforce ) Script6 statements · 138 bytes of bytecode 0x0000 SpringLength = WheelConfig.SpringLength;0x0024 SpringStrength = WheelConfig.SpringStrength;0x0048 SpringDamping = WheelConfig.SpringDamping;0x006C PhysicsDownforce = PhysicsDownforce;0x0087 return;Public 0x147c170 0x18 void GetIsHandbrakeWheel (const bool & IsHandbrakeWheel ) Script3 statements · 31 bytes of bytecode 0x0000 IsHandbrakeWheel = WheelConfig.IsHandbrakeWheel;0x001C return;Public 0x147c170 0x01 void BreakAttachment () Script18 statements · 316 bytes of bytecode 0x0000 CallFunc_GetWheelMode_ReturnValue = GetWheelMode();0x001C K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetWheelMode_ReturnValue, 0);0x003B if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_007B;0x0049 K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetWheelMode_ReturnValue, 1);0x0068 if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_00F9;0x0076 goto Label_0139;0x007B Label_007B:0x007B GetWheelMesh(CallFunc_GetWheelMesh_WheelMesh);0x0092 CallFunc_GetWheelMesh_WheelMesh.SetCollisionEnabled(3);0x00B8 GetWheelMesh(CallFunc_GetWheelMesh_WheelMesh);0x00CF CallFunc_GetWheelMesh_WheelMesh.SetSimulatePhysics(true);0x00F4 goto Label_0139;0x00F9 Label_00F9:0x00F9 SpringConstraint.BreakConstraint();0x0119 TurnConstraint.BreakConstraint();0x0139 Label_0139:0x0139 return;Private 0x147c170 0x00 void UpdateRotationConstraint () Script34 statements · 938 bytes of bytecode 0x0000 PushFlow(Label_03A7);0x0005 PushFlow(Label_0019);0x000A if (!(isAttached)) goto Label_0343;0x0018 PopFlow();0x0019 Label_0019:0x0019 PushFlow(Label_024E);0x001E TurnConstraint.SetLinearXLimit(0, 0.01f);0x0045 TurnConstraint.SetLinearYLimit(0, 20f);0x006C TurnConstraint.SetLinearZLimit(0, 20f);0x0093 TurnConstraint.SetAngularSwing1Limit(2, 0f);0x00BA TurnConstraint.SetAngularTwistLimit(2, 40f);0x00E1 TurnConstraint.SetAngularSwing2Limit(0, 0f);0x0108 TurnConstraint.SetDisableCollision(true);0x0129 CallFunc_MakeTransform_ReturnValue_1 = MakeTransform(FVector(0, 0, 0), FRotator(0, 0, 0), FVector(1, 1, 1));0x0190 TurnConstraint.SetConstraintReferenceFrame(0, CallFunc_MakeTransform_ReturnValue_1);0x01BB CallFunc_MakeTransform_ReturnValue = MakeTransform(FVector(0, 0, 0), FRotator(0, 0, 0), FVector(1, 1, 1));0x0222 TurnConstraint.SetConstraintReferenceFrame(1, CallFunc_MakeTransform_ReturnValue);0x024D PopFlow();0x024E Label_024E:0x024E GetIsDrivingWheel(CallFunc_GetIsDrivingWheel_isDrivingWheel);0x0265 if (!(CallFunc_GetIsDrivingWheel_isDrivingWheel)) PopFlow();0x026F TurnConstraint.SetAngularDriveMode(1);0x0291 TurnConstraint.SetAngularVelocityDriveTwistAndSwing(false, true);0x02B3 CallFunc_MakeVector_ReturnValue = MakeVector(0, 0, 0);0x02EA TurnConstraint.SetAngularVelocityTarget(CallFunc_MakeVector_ReturnValue);0x0313 TurnConstraint.SetAngularDriveParams(0f, 0f, 0f);0x0342 PopFlow();0x0343 Label_0343:0x0343 GetWheelController(CallFunc_GetWheelController_ControllerMesh);0x035A TurnConstraint.SetConstrainedComponents(CallFunc_GetWheelController_ControllerMesh, FName(None), WheelMeshComponent, FName(None));0x03A6 PopFlow();0x03A7 Label_03A7:0x03A7 return;Private 0x147c170 0x00 void UpdateSpringConstraint () Script46 statements · 1,468 bytes of bytecode 0x0000 PushFlow(Label_05B9);0x0005 PushFlow(Label_0019);0x000A if (!(isAttached)) goto Label_053F;0x0018 PopFlow();0x0019 Label_0019:0x0019 SpringConstraint.SetLinearXLimit(2, 0.01f);0x0040 SpringConstraint.SetLinearYLimit(2, 20f);0x0067 GetSpringLength(CallFunc_GetSpringLength_SpringLength);0x007E CallFunc_Multiply_DoubleDouble_ReturnValue = Multiply_DoubleDouble(CallFunc_GetSpringLength_SpringLength, 0.5);0x00AC Temp_byte_Variable = 2;0x00C0 Temp_byte_Variable_1 = 1;0x00D4 Temp_bool_Variable = HasSpring;0x00E7 CallFunc_SetLinearZLimit_LimitSize_ImplicitCast = Cast<3>(CallFunc_Multiply_DoubleDouble_ReturnValue);0x0104 SpringConstraint.SetLinearZLimit(Switch(Temp_bool_Variable, false => Temp_byte_Variable, true => Temp_byte_Variable_1, default => K2Node_Select_Default), CallFunc_SetLinearZLimit_LimitSize_ImplicitCast);0x0162 SpringConstraint.SetAngularSwing1Limit(0, 0f);0x0189 SpringConstraint.SetAngularTwistLimit(0, 0f);0x01B0 SpringConstraint.SetAngularSwing2Limit(0, 0f);0x01D7 GetSpringLength(CallFunc_GetSpringLength_SpringLength);0x01EE CallFunc_Multiply_DoubleDouble_ReturnValue_2 = Multiply_DoubleDouble(CallFunc_GetSpringLength_SpringLength, -1);0x021C CallFunc_MakeVector_ReturnValue = MakeVector(0, 0, CallFunc_Multiply_DoubleDouble_ReturnValue_2);0x0253 SpringConstraint.SetLinearPositionTarget(CallFunc_MakeVector_ReturnValue);0x027C CallFunc_SetLinearDriveParams_PositionStrength_ImplicitCast = Cast<3>(PhysicsDownforce);0x0299 SpringConstraint.SetLinearDriveParams(CallFunc_SetLinearDriveParams_PositionStrength_ImplicitCast, 0f, 0f);0x02CC SpringConstraint.SetLinearPositionDrive(false, false, true);0x02EF GetSuspensionSettings(CallFunc_GetSuspensionSettings_SpringLength, CallFunc_GetSuspensionSettings_SpringStrength, CallFunc_GetSuspensionSettings_SpringDamping, CallFunc_GetSuspensionSettings_PhysicsDownforce);0x0321 CallFunc_Multiply_DoubleDouble_A_ImplicitCast = Cast<4>(CallFunc_GetSuspensionSettings_SpringStrength);0x033E CallFunc_Multiply_DoubleDouble_ReturnValue_1 = Multiply_DoubleDouble(CallFunc_Multiply_DoubleDouble_A_ImplicitCast, 10);0x036C CallFunc_Not_PreBool_ReturnValue = Not_PreBool(SpringHardLock);0x0389 CallFunc_SetLinearSoftConstraint_Stiffness_ImplicitCast = Cast<3>(CallFunc_Multiply_DoubleDouble_ReturnValue_1);0x03A6 SpringConstraint.SetLinearSoftConstraint(CallFunc_Not_PreBool_ReturnValue, CallFunc_SetLinearSoftConstraint_Stiffness_ImplicitCast, CallFunc_GetSuspensionSettings_SpringDamping);0x03E1 SpringConstraint.SetDisableCollision(true);0x0402 CallFunc_GetRelativeTransform_ReturnValue = GetRelativeTransform();0x041E BreakTransform(CallFunc_GetRelativeTransform_ReturnValue, CallFunc_BreakTransform_Location, CallFunc_BreakTransform_Rotation, CallFunc_BreakTransform_Scale);0x044C BreakVector(CallFunc_BreakTransform_Location, CallFunc_BreakVector_X, CallFunc_BreakVector_Y, CallFunc_BreakVector_Z);0x047A CallFunc_MakeVector_ReturnValue_1 = MakeVector(CallFunc_BreakVector_X, CallFunc_BreakVector_Y, CallFunc_BreakVector_Z);0x04B1 SpringConstraint.SetConstraintReferencePosition(1, CallFunc_MakeVector_ReturnValue_1);0x04DC CallFunc_MakeVector_ReturnValue_2 = MakeVector(0, 0, 0);0x0513 SpringConstraint.SetConstraintReferencePosition(0, CallFunc_MakeVector_ReturnValue_2);0x053E PopFlow();0x053F Label_053F:0x053F Vehicle.GetVehicleMesh(CallFunc_GetVehicleMesh_Mesh);0x056C SpringConstraint.SetConstrainedComponents(WheelMeshComponent, FName(None), CallFunc_GetVehicleMesh_Mesh, FName(None));0x05B8 PopFlow();0x05B9 Label_05B9:0x05B9 return;Private 0x147c170 0x00 void CreateWheelController () Script10 statements · 153 bytes of bytecode 0x0000 CallFunc_IsValid_ReturnValue = IsValid(WheelController);0x001D if (!(CallFunc_IsValid_ReturnValue)) goto Label_0030;0x002B goto Label_0096;0x0030 Label_0030:0x0030 CallFunc_GetRelativeTransform_ReturnValue = GetRelativeTransform();0x004C Vehicle.CreateNewWheelController(false, CallFunc_GetRelativeTransform_ReturnValue, CallFunc_CreateNewWheelController_Mesh);0x0083 WheelController = CallFunc_CreateNewWheelController_Mesh;0x0096 Label_0096:0x0096 return;Private 0x147c170 0x00 void DestroyPhysConstraints () Script12 statements · 222 bytes of bytecode 0x0000 CallFunc_IsValid_ReturnValue_2 = IsValid(Vehicle);0x001D if (!(CallFunc_IsValid_ReturnValue_2)) goto Label_00DB;0x002B CallFunc_IsValid_ReturnValue_1 = IsValid(SpringConstraint);0x0048 if (!(CallFunc_IsValid_ReturnValue_1)) goto Label_0083;0x0056 Vehicle.DestroyOwnedComponent(SpringConstraint);0x0083 Label_0083:0x0083 CallFunc_IsValid_ReturnValue = IsValid(TurnConstraint);0x00A0 if (!(CallFunc_IsValid_ReturnValue)) goto Label_00DB;0x00AE Vehicle.DestroyOwnedComponent(TurnConstraint);0x00DB Label_00DB:0x00DB return;Private 0x147c170 0x00 void CreatePhysConstraints () Script24 statements · 543 bytes of bytecode 0x0000 PushFlow(Label_021C);0x0005 PushFlow(Label_0036);0x000A CallFunc_IsValid_ReturnValue_1 = IsValid(SpringConstraint);0x0027 if (!(CallFunc_IsValid_ReturnValue_1)) goto Label_013F;0x0035 PopFlow();0x0036 Label_0036:0x0036 CallFunc_IsValid_ReturnValue = IsValid(TurnConstraint);0x0053 if (!(CallFunc_IsValid_ReturnValue)) goto Label_0062;0x0061 PopFlow();0x0062 Label_0062:0x0062 Vehicle.CreateNewConstraint(false, FTransform(...), CallFunc_CreateNewConstraint_VehicleConstraint);0x00E1 TurnConstraint = CallFunc_CreateNewConstraint_VehicleConstraint;0x00F4 CallFunc_K2_AttachToComponent_ReturnValue = TurnConstraint.K2_AttachToComponent(this, FName(None), 0, 0, 0, true);0x0133 isAttached = false;0x013E PopFlow();0x013F Label_013F:0x013F Vehicle.CreateNewConstraint(false, FTransform(...), CallFunc_CreateNewConstraint_VehicleConstraint_1);0x01BE SpringConstraint = CallFunc_CreateNewConstraint_VehicleConstraint_1;0x01D1 CallFunc_K2_AttachToComponent_ReturnValue_1 = SpringConstraint.K2_AttachToComponent(this, FName(None), 0, 0, 0, true);0x0210 isAttached = false;0x021B PopFlow();0x021C Label_021C:0x021C return;Private 0x147c170 0x00 void ConfigurePhysConstraints () Script5 statements · 45 bytes of bytecode 0x0000 CreatePhysConstraints();0x000E UpdateSpringConstraint();0x001C UpdateRotationConstraint();0x002A return;Private 0x147c170 0x00 void StopSkidEffects () Script7 statements · 96 bytes of bytecode 0x0000 ClearActiveParticle();0x000E CallFunc_IsValid_ReturnValue = IsValid(SkidAudio);0x002B if (!(CallFunc_IsValid_ReturnValue)) goto Label_005D;0x0039 SkidAudio.Stop();0x005D Label_005D:0x005D return;Private 0x147c170 0x00 void UpdateSteering (double NewSteering ) Script16 statements · 366 bytes of bytecode 0x0000 if (!(WheelConfig.IsSteerableWheel)) goto Label_016B;0x0017 CallFunc_GetSteeringInput_ReturnValue = GetSteeringInput();0x0033 CallFunc_NotEqual_DoubleDouble_A_ImplicitCast = Cast<4>(CallFunc_GetSteeringInput_ReturnValue);0x0050 CallFunc_NotEqual_DoubleDouble_ReturnValue = NotEqual_DoubleDouble(CallFunc_NotEqual_DoubleDouble_A_ImplicitCast, NewSteering);0x0076 if (!(CallFunc_NotEqual_DoubleDouble_ReturnValue)) goto Label_016B;0x0084 CallFunc_SetSteeringInput_Steering_ImplicitCast = Cast<3>(NewSteering);0x00A1 SetSteeringInput(CallFunc_SetSteeringInput_Steering_ImplicitCast, WheelConfig.InvertSteering);0x00C6 CallFunc_GetWheelMode_ReturnValue = GetWheelMode();0x00E2 CallFunc_EqualEqual_ByteByte_ReturnValue = EqualEqual_ByteByte(CallFunc_GetWheelMode_ReturnValue, 1);0x0101 if (!(CallFunc_EqualEqual_ByteByte_ReturnValue)) goto Label_016B;0x010F CallFunc_IsValid_ReturnValue = IsValid(WheelMeshComponent);0x012C if (!(CallFunc_IsValid_ReturnValue)) goto Label_016B;0x013A WheelMeshComponent.WakeRigidBody(FName(None));0x016B Label_016B:0x016B return;Public 0x147c170 0x08 void SetChassisCollisions (bool Collision ) Script6 statements · 143 bytes of bytecode 0x0000 CallFunc_Not_PreBool_ReturnValue = Not_PreBool(Collision);0x001D SpringConstraint.SetDisableCollision(CallFunc_Not_PreBool_ReturnValue);0x0046 CallFunc_Not_PreBool_ReturnValue = Not_PreBool(Collision);0x0063 TurnConstraint.SetDisableCollision(CallFunc_Not_PreBool_ReturnValue);0x008C return;Private 0x147c170 0x01 void UpdateWheelMeshProperties () Script13 statements · 354 bytes of bytecode 0x0000 Temp_real_Variable = 100;0x001B Temp_bool_Variable = OverrideWeight;0x002E CallFunc_SetMassOverrideInKg_MassInKg_ImplicitCast = Cast<3>(Switch(Temp_bool_Variable, false => Temp_real_Variable, true => OverrideWeightKg, default => K2Node_Select_Default));0x0077 WheelMeshComponent.SetMassOverrideInKg(FName(None), CallFunc_SetMassOverrideInKg_MassInKg_ImplicitCast, true);0x00B2 K2Node_DynamicCast_AsSphere_Collision = Cast<SphereComponent>(WheelMeshComponent);0x00D6 K2Node_DynamicCast_bSuccess = Cast<1>(K2Node_DynamicCast_AsSphere_Collision);0x00F3 if (!(K2Node_DynamicCast_bSuccess)) goto Label_015F;0x0101 GetWheelRadius(CallFunc_GetWheelRadius_WheelRadius);0x0118 CallFunc_SetSphereRadius_InSphereRadius_ImplicitCast = Cast<3>(CallFunc_GetWheelRadius_WheelRadius);0x0135 K2Node_DynamicCast_AsSphere_Collision.SetSphereRadius(CallFunc_SetSphereRadius_InSphereRadius_ImplicitCast, true);0x015F Label_015F:0x015F return;Private 0x147c170 0x00 void GetWheelTorque (const double & WheelTorque ) Script3 statements · 30 bytes of bytecode 0x0000 WheelTorque = WheelTorque;0x001B return;Public 0x147c170 0x08 void SwapVisibleMesh (bool UseProjected ) Script20 statements · 470 bytes of bytecode 0x0000 CallFunc_IsValid_ReturnValue = IsValid(Vehicle);0x001D if (!(CallFunc_IsValid_ReturnValue)) goto Label_01D3;0x002B CallFunc_GetWheelMode_ReturnValue = GetWheelMode();0x0047 CallFunc_EqualEqual_ByteByte_ReturnValue = EqualEqual_ByteByte(CallFunc_GetWheelMode_ReturnValue, 1);0x0066 CallFunc_BooleanAND_ReturnValue = BooleanAND(CallFunc_EqualEqual_ByteByte_ReturnValue, Vehicle.WheelReprojection);0x00A2 if (!(CallFunc_BooleanAND_ReturnValue)) goto Label_01D3;0x00B0 GetProjectedMesh(CallFunc_GetProjectedMesh_ProjectedMesh);0x00C7 CallFunc_IsValid_ReturnValue_1 = IsValid(CallFunc_GetProjectedMesh_ProjectedMesh);0x00E4 if (!(CallFunc_IsValid_ReturnValue_1)) goto Label_01D3;0x00F2 GetWheelMesh(CallFunc_GetWheelMesh_WheelMesh);0x0109 CallFunc_IsValid_ReturnValue_2 = IsValid(CallFunc_GetWheelMesh_WheelMesh);0x0126 if (!(CallFunc_IsValid_ReturnValue_2)) goto Label_01D3;0x0134 GetProjectedMesh(CallFunc_GetProjectedMesh_ProjectedMesh);0x014B CallFunc_GetProjectedMesh_ProjectedMesh.SetVisibility(UseProjected, false);0x0175 CallFunc_Not_PreBool_ReturnValue = Not_PreBool(UseProjected);0x0192 GetWheelMesh(CallFunc_GetWheelMesh_WheelMesh);0x01A9 CallFunc_GetWheelMesh_WheelMesh.SetVisibility(CallFunc_Not_PreBool_ReturnValue, false);0x01D3 Label_01D3:0x01D3 return;Private 0x147c170 0x01 void SetWheelPosition (const FVector & NewLocation , const FRotator & NewRotation ) Script16 statements · 354 bytes of bytecode 0x0000 CallFunc_NotEqual_RotatorRotator_ReturnValue = NotEqual_RotatorRotator(this.RelativeRotation, NewRotation, 1e-04f);0x0039 if (!(CallFunc_NotEqual_RotatorRotator_ReturnValue)) goto Label_00E3;0x0047 GetWheelController(CallFunc_GetWheelController_ControllerMesh);0x005E this.K2_SetRelativeLocationAndRotation(NewLocation, NewRotation, false, CallFunc_K2_SetRelativeLocationAndRotation_SweepHitResult, false);0x0093 CallFunc_GetWheelController_ControllerMesh.K2_SetRelativeLocationAndRotation(NewLocation, NewRotation, false, CallFunc_K2_SetRelativeLocationAndRotation_SweepHitResult, false);0x00D0 Label_00D0:0x00D0 UpdateConstraints();0x00DE goto Label_015F;0x00E3 Label_00E3:0x00E3 GetWheelController(CallFunc_GetWheelController_ControllerMesh);0x00FA this.K2_SetRelativeLocation(NewLocation, false, CallFunc_K2_SetRelativeLocation_SweepHitResult, false);0x0126 CallFunc_GetWheelController_ControllerMesh.K2_SetRelativeLocation(NewLocation, false, CallFunc_K2_SetRelativeLocation_SweepHitResult, false);0x015A goto Label_00D0;0x015F Label_015F:0x015F return;Public 0x147c170 0x30 void SetProjectedMesh (UStaticMeshComponent * ProjectedMesh ) Script3 statements · 22 bytes of bytecode 0x0000 ProjectedMesh = ProjectedMesh;0x0013 return;Public 0x147c170 0x08 void GetProjectedMesh (const UPrimitiveComponent * & ProjectedMesh ) Script3 statements · 22 bytes of bytecode 0x0000 ProjectedMesh = ProjectedMesh;0x0013 return;Public 0x147c170 0x08 void CleanupForDestroy () Script9 statements · 143 bytes of bytecode 0x0000 ClearActiveParticle();0x000E DestroyPhysConstraints();0x001C CallFunc_IsValid_ReturnValue = IsValid(SkidAudio);0x0039 if (!(CallFunc_IsValid_ReturnValue)) goto Label_008C;0x0047 SkidAudio.Stop();0x006B SkidAudio.K2_DestroyComponent(this);0x008C Label_008C:0x008C return;Public 0x147c170 0x00 void GetConstraints (const UVehicleConstraint * & TurnConstraint , const UVehicleConstraint * & SpringConstraint ) Script4 statements · 41 bytes of bytecode 0x0000 TurnConstraint = TurnConstraint;0x0013 SpringConstraint = SpringConstraint;0x0026 return;Public 0x147c170 0x10 void GetLastTouch (FHitResult & LastTouch ) Script3 statements · 39 bytes of bytecode 0x0000 LastTouch = WheelData.LastTrace;0x0024 return;Public 0x147c170 0x100 void TouchSurfaceChange () Script18 statements · 476 bytes of bytecode 0x0000 ClearActiveParticle();0x000E GetLastTouch(CallFunc_GetLastTouch_LastTouch);0x0025 CallFunc_GetSurfaceType_ReturnValue = GetSurfaceType(CallFunc_GetLastTouch_LastTouch);0x004A GetEffectsForSurface(CallFunc_GetSurfaceType_ReturnValue, CallFunc_GetEffectsForSurface_SkidSound, CallFunc_GetEffectsForSurface_SkidParticle);0x0073 ActiveSkidParticleTemplate = CallFunc_GetEffectsForSurface_SkidParticle;0x0086 ActiveSkidSound = CallFunc_GetEffectsForSurface_SkidSound;0x0099 CallFunc_IsValid_ReturnValue_1 = IsValid(SkidAudio);0x00B6 if (!(CallFunc_IsValid_ReturnValue_1)) goto Label_01D9;0x00C4 SkidAudio.SetSound(ActiveSkidSound);0x00ED CallFunc_IsValid_ReturnValue = IsValid(ActiveSkidSound);0x010A if (!(CallFunc_IsValid_ReturnValue)) goto Label_01D9;0x0118 CallFunc_RandomFloatInRange_Max_ImplicitCast = Cast<4>(SkidAudio.Sound.Duration);0x0161 CallFunc_RandomFloatInRange_ReturnValue = RandomFloatInRange(0, CallFunc_RandomFloatInRange_Max_ImplicitCast);0x018F CallFunc_Play_StartTime_ImplicitCast = Cast<3>(CallFunc_RandomFloatInRange_ReturnValue);0x01AC SkidAudio.Play(CallFunc_Play_StartTime_ImplicitCast);0x01D9 Label_01D9:0x01D9 return;Public 0x147c170 0x00 void GetEffectsForSurface (const EPhysicalSurface & Surface , const USoundBase * & SkidSound , const UParticleSystem * & SkidParticle ) Script38 statements · 782 bytes of bytecode 0x0000 PushFlow(Label_030B);0x0005 CallFunc_NotEqual_ByteByte_ReturnValue = NotEqual_ByteByte(Surface, 0);0x0024 if (!(CallFunc_NotEqual_ByteByte_ReturnValue)) goto Label_026B;0x0032 Temp_bool_True_if_break_was_hit_Variable = false;0x003D Temp_int_Loop_Counter_Variable = 0;0x0054 Temp_int_Array_Index_Variable = 0;0x006B Label_006B:0x006B CallFunc_Not_PreBool_ReturnValue = Not_PreBool(Temp_bool_True_if_break_was_hit_Variable);0x0088 CallFunc_Array_Length_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Length(SurfaceEffects);0x00C3 CallFunc_Less_IntInt_ReturnValue = Less_IntInt(Temp_int_Loop_Counter_Variable, CallFunc_Array_Length_ReturnValue);0x00E9 CallFunc_BooleanAND_ReturnValue = BooleanAND(CallFunc_Not_PreBool_ReturnValue, CallFunc_Less_IntInt_ReturnValue);0x010F if (!(CallFunc_BooleanAND_ReturnValue)) goto Label_0296;0x011D Temp_int_Array_Index_Variable = Temp_int_Loop_Counter_Variable;0x0138 PushFlow(Label_02C1);0x013D /Script/Engine.Default__KismetArrayLibrary.Array_Get(SurfaceEffects, Temp_int_Array_Index_Variable, CallFunc_Array_Get_Item);0x0178 CallFunc_EqualEqual_ByteByte_ReturnValue = EqualEqual_ByteByte(CallFunc_Array_Get_Item.Surface_5_7BB8627C42DE787CCED5EBA66957B609, Surface);0x01A7 if (!(CallFunc_EqualEqual_ByteByte_ReturnValue)) PopFlow();0x01B1 /Script/Engine.Default__KismetArrayLibrary.Array_Get(SurfaceEffects, Temp_int_Array_Index_Variable, CallFunc_Array_Get_Item);0x01EC FoundSound = CallFunc_Array_Get_Item.SkidSound_10_325C271B4B0E1AF52BFE588CB0AA1C98;0x0208 /Script/Engine.Default__KismetArrayLibrary.Array_Get(SurfaceEffects, Temp_int_Array_Index_Variable, CallFunc_Array_Get_Item);0x0243 FoundParticle = CallFunc_Array_Get_Item.SkidParticle_7_42D352E74D524EB323E9E78A9A9F6329;0x025F Temp_bool_True_if_break_was_hit_Variable = true;0x026A PopFlow();0x026B Label_026B:0x026B SkidSound = SkidSound;0x027E SkidParticle = SkidParticle;0x0291 goto Label_030B;0x0296 Label_0296:0x0296 SkidSound = FoundSound;0x02A9 SkidParticle = FoundParticle;0x02BC goto Label_030B;0x02C1 Label_02C1:0x02C1 CallFunc_Add_IntInt_ReturnValue = Add_IntInt(Temp_int_Loop_Counter_Variable, 1);0x02EB Temp_int_Loop_Counter_Variable = CallFunc_Add_IntInt_ReturnValue;0x0306 goto Label_006B;0x030B Label_030B:0x030B return;Public 0x147c170 0x18 void ClearActiveParticle () Script7 statements · 93 bytes of bytecode 0x0000 CallFunc_IsValid_ReturnValue = IsValid(ActiveSkidParticle);0x001D if (!(CallFunc_IsValid_ReturnValue)) goto Label_005A;0x002B ActiveSkidParticle.Deactivate();0x004F ActiveSkidParticle = nullptr;0x005A Label_005A:0x005A return;Public 0x147c170 0x00 void SetVehicleTorque (double TargetSpeed , double Torque , bool Reverse ) Script6 statements · 88 bytes of bytecode 0x0000 CallFunc_Not_PreBool_ReturnValue = Not_PreBool(OverrideVehicleTorque);0x001D if (!(CallFunc_Not_PreBool_ReturnValue)) goto Label_0055;0x002B SetWheelTorque(false, TargetSpeed, Torque, Reverse);0x0055 Label_0055:0x0055 return;Public 0x147c170 0x11 void SetWheelTorque (bool OverrideVehicle , double TargetSpeed , double Torque , bool Reverse ) Script35 statements · 1,026 bytes of bytecode 0x0000 OverrideVehicleTorque = OverrideVehicle;0x0013 WheelTorque = Torque;0x002E CallFunc_Greater_DoubleDouble_ReturnValue = Greater_DoubleDouble(WheelTorque, 0);0x0054 if (!(CallFunc_Greater_DoubleDouble_ReturnValue)) goto Label_03E3;0x0062 GetWheelMesh(CallFunc_GetWheelMesh_WheelMesh);0x0079 CallFunc_GetMeshRadius_ReturnValue = GetMeshRadius(CallFunc_GetWheelMesh_WheelMesh, FName(None));0x00AB CallFunc_LinearSpeedToRads_ReturnValue = LinearSpeedToRads(TargetSpeed, CallFunc_GetMeshRadius_ReturnValue);0x00D9 GetInvertTorque(CallFunc_GetInvertTorque_isInvertedTorque);0x00F0 CallFunc_Multiply_DoubleDouble_ReturnValue = Multiply_DoubleDouble(CallFunc_LinearSpeedToRads_ReturnValue, -1);0x011E CallFunc_BooleanXOR_ReturnValue = BooleanXOR(Reverse, CallFunc_GetInvertTorque_isInvertedTorque);0x0144 Temp_bool_Variable = CallFunc_BooleanXOR_ReturnValue;0x0157 K2Node_VariableSet_TargetAngVel_ImplicitCast = Cast<3>(Switch(Temp_bool_Variable, false => CallFunc_LinearSpeedToRads_ReturnValue, true => CallFunc_Multiply_DoubleDouble_ReturnValue, default => K2Node_Select_Default));0x01A0 TargetAngVel = K2Node_VariableSet_TargetAngVel_ImplicitCast;0x01BB Label_01BB:0x01BB CallFunc_IsValid_ReturnValue = IsValid(TurnConstraint);0x01D8 if (!(CallFunc_IsValid_ReturnValue)) goto Label_03FF;0x01E6 GetInvertTorque(CallFunc_GetInvertTorque_isInvertedTorque);0x01FD CallFunc_BooleanXOR_ReturnValue = BooleanXOR(Reverse, CallFunc_GetInvertTorque_isInvertedTorque);0x0223 Temp_bool_Variable_1 = CallFunc_BooleanXOR_ReturnValue;0x0236 CallFunc_GetMeshDiameter_ReturnValue = GetMeshDiameter(WheelMeshComponent, BoneName);0x0264 CallFunc_MultiplyByPi_Value_ImplicitCast = Cast<4>(CallFunc_GetMeshDiameter_ReturnValue);0x0281 CallFunc_MultiplyByPi_ReturnValue = MultiplyByPi(CallFunc_MultiplyByPi_Value_ImplicitCast);0x02A6 K2Node_MathExpression_ReturnValue = Divide_DoubleDouble(TargetSpeed, CallFunc_MultiplyByPi_ReturnValue);0x02D4 CallFunc_Multiply_DoubleDouble_ReturnValue_1 = Multiply_DoubleDouble(K2Node_MathExpression_ReturnValue, -1);0x0302 CallFunc_MakeVector_ReturnValue = MakeVector(0, Switch(Temp_bool_Variable_1, false => CallFunc_Multiply_DoubleDouble_ReturnValue_1, true => K2Node_MathExpression_ReturnValue, default => K2Node_Select_Default_1), 0);0x0365 TurnConstraint.SetAngularVelocityTarget(CallFunc_MakeVector_ReturnValue);0x038E CallFunc_SetAngularDriveParams_VelocityStrength_ImplicitCast = Cast<3>(WheelTorque);0x03AB TurnConstraint.SetAngularDriveParams(0f, CallFunc_SetAngularDriveParams_VelocityStrength_ImplicitCast, 0f);0x03DE goto Label_03FF;0x03E3 Label_03E3:0x03E3 TargetAngVel = 0f;0x03FA goto Label_01BB;0x03FF Label_03FF:0x03FF return;Public 0x147c170 0x19 void CleanupSkidParticle () Script9 statements · 70 bytes of bytecode 0x0000 if (!(SkidParticles)) goto Label_0043;0x000E CallFunc_GetHasContact_ReturnValue = GetHasContact();0x0022 if (!(CallFunc_GetHasContact_ReturnValue)) goto Label_0035;0x0030 goto Label_0043;0x0035 Label_0035:0x0035 ClearActiveParticle();0x0043 Label_0043:0x0043 return;Private 0x147c170 0x00 void InitSkidParticles () Script5 statements · 31 bytes of bytecode 0x0000 if (!(SkidParticles)) goto Label_001C;0x000E TouchSurfaceChange();0x001C Label_001C:0x001C return;Public 0x147c170 0x00 void InitSkidSounds () Script19 statements · 470 bytes of bytecode 0x0000 CallFunc_IsDedicatedServer_ReturnValue = IsDedicatedServer(this);0x0015 CallFunc_Not_PreBool_ReturnValue = Not_PreBool(CallFunc_IsDedicatedServer_ReturnValue);0x0032 CallFunc_BooleanAND_ReturnValue = BooleanAND(SkidSounds, CallFunc_Not_PreBool_ReturnValue);0x0058 if (!(CallFunc_BooleanAND_ReturnValue)) goto Label_01D3;0x0066 CallFunc_IsValid_ReturnValue = IsValid(SkidAudio);0x0083 if (!(CallFunc_IsValid_ReturnValue)) goto Label_0141;0x0091 Label_0091:0x0091 CallFunc_RandomFloatInRange_Max_ImplicitCast = Cast<4>(SkidSound.Duration);0x00C4 CallFunc_RandomFloatInRange_ReturnValue = RandomFloatInRange(0, CallFunc_RandomFloatInRange_Max_ImplicitCast);0x00F2 CallFunc_Play_StartTime_ImplicitCast = Cast<3>(CallFunc_RandomFloatInRange_ReturnValue);0x010F SkidAudio.Play(CallFunc_Play_StartTime_ImplicitCast);0x013C goto Label_01D3;0x0141 Label_0141:0x0141 CallFunc_SpawnSoundAttached_ReturnValue = SpawnSoundAttached(SkidSound, this, FName(None), FVector(0, 0, 0), FRotator(0, 0, 0), 3, true, 0.3f, 1f, 0f, /VehicleSystemPlugin/VehicleAssets/Sound/EngineLoud_Att.EngineLoud_Att, nullptr, false);0x01BB SkidAudio = CallFunc_SpawnSoundAttached_ReturnValue;0x01CE goto Label_0091;0x01D3 Label_01D3:0x01D3 return;Public 0x147c170 0x00 void UpdateSkidEffects () Script47 statements · 1,683 bytes of bytecode 0x0000 CallFunc_IsDedicatedServer_ReturnValue = IsDedicatedServer(this);0x0015 CallFunc_Not_PreBool_ReturnValue = Not_PreBool(CallFunc_IsDedicatedServer_ReturnValue);0x0032 if (!(CallFunc_Not_PreBool_ReturnValue)) goto Label_0690;0x0040 CallFunc_BooleanOR_ReturnValue = BooleanOR(SkidParticles, SkidSounds);0x0066 if (!(CallFunc_BooleanOR_ReturnValue)) goto Label_0690;0x0074 CalculateSkidAmount();0x0082 CallFunc_GetSurfaceType_ReturnValue = GetSurfaceType(WheelData.LastTrace);0x00B0 CallFunc_EqualEqual_ByteByte_ReturnValue = EqualEqual_ByteByte(LastSurfaceHit, CallFunc_GetSurfaceType_ReturnValue);0x00D6 if (!(CallFunc_EqualEqual_ByteByte_ReturnValue)) goto Label_04C3;0x00E4 Label_00E4:0x00E4 if (!(SkidParticles)) goto Label_0690;0x00F2 BreakHitResult(WheelData.LastTrace, CallFunc_BreakHitResult_bBlockingHit, CallFunc_BreakHitResult_bInitialOverlap, CallFunc_BreakHitResult_Time, CallFunc_BreakHitResult_Distance, CallFunc_BreakHitResult_Location, CallFunc_BreakHitResult_ImpactPoint, CallFunc_BreakHitResult_Normal, CallFunc_BreakHitResult_ImpactNormal, CallFunc_BreakHitResult_PhysMat, CallFunc_BreakHitResult_HitActor, CallFunc_BreakHitResult_HitComponent, CallFunc_BreakHitResult_HitBoneName, CallFunc_BreakHitResult_BoneName, CallFunc_BreakHitResult_HitItem, CallFunc_BreakHitResult_ElementIndex, CallFunc_BreakHitResult_FaceIndex, CallFunc_BreakHitResult_TraceStart, CallFunc_BreakHitResult_TraceEnd);0x01B0 CallFunc_Map_Find_ReturnValue = /Script/Engine.Default__BlueprintMapLibrary.Map_Find(SkidEffectSpeedBySurface, LastSurfaceHit, CallFunc_Map_Find_Value);0x01F5 Temp_bool_Variable = CallFunc_Map_Find_ReturnValue;0x0208 CallFunc_Greater_DoubleDouble_ReturnValue = Greater_DoubleDouble(Skid, Switch(Temp_bool_Variable, false => SkidEffectSpeed, true => CallFunc_Map_Find_Value, default => K2Node_Select_Default));0x025A CallFunc_BooleanAND_ReturnValue = BooleanAND(CallFunc_Greater_DoubleDouble_ReturnValue, CallFunc_BreakHitResult_bBlockingHit);0x0280 if (!(CallFunc_BooleanAND_ReturnValue)) goto Label_051F;0x028E CallFunc_IsValid_ReturnValue_1 = IsValid(ActiveSkidParticle);0x02AB if (!(CallFunc_IsValid_ReturnValue_1)) goto Label_0532;0x02B9 Label_02B9:0x02B9 CallFunc_GetWheelVelocity_ReturnValue = GetWheelVelocity(false);0x02D6 Vehicle.GetVehicleMesh(CallFunc_GetVehicleMesh_Mesh);0x0303 CallFunc_K2_GetComponentRotation_ReturnValue = CallFunc_GetVehicleMesh_Mesh.K2_GetComponentRotation();0x0335 CalculateSkidDirection(CallFunc_GetWheelVelocity_ReturnValue, CallFunc_K2_GetComponentRotation_ReturnValue, CallFunc_CalculateSkidDirection_MarkDirection);0x035E CallFunc_MakeVector_ReturnValue = MakeVector(0, 0, SkidParticleHeightOffset);0x0395 BreakHitResult(WheelData.LastTrace, CallFunc_BreakHitResult_bBlockingHit, CallFunc_BreakHitResult_bInitialOverlap, CallFunc_BreakHitResult_Time, CallFunc_BreakHitResult_Distance, CallFunc_BreakHitResult_Location, CallFunc_BreakHitResult_ImpactPoint, CallFunc_BreakHitResult_Normal, CallFunc_BreakHitResult_ImpactNormal, CallFunc_BreakHitResult_PhysMat, CallFunc_BreakHitResult_HitActor, CallFunc_BreakHitResult_HitComponent, CallFunc_BreakHitResult_HitBoneName, CallFunc_BreakHitResult_BoneName, CallFunc_BreakHitResult_HitItem, CallFunc_BreakHitResult_ElementIndex, CallFunc_BreakHitResult_FaceIndex, CallFunc_BreakHitResult_TraceStart, CallFunc_BreakHitResult_TraceEnd);0x0453 CallFunc_Add_VectorVector_ReturnValue = Add_VectorVector(CallFunc_BreakHitResult_Location, CallFunc_MakeVector_ReturnValue);0x0481 ActiveSkidParticle.K2_SetWorldLocationAndRotation(CallFunc_Add_VectorVector_ReturnValue, CallFunc_CalculateSkidDirection_MarkDirection, false, CallFunc_K2_SetWorldLocationAndRotation_SweepHitResult, false);0x04BE goto Label_0690;0x04C3 Label_04C3:0x04C3 CallFunc_GetSurfaceType_ReturnValue = GetSurfaceType(WheelData.LastTrace);0x04F1 LastSurfaceHit = CallFunc_GetSurfaceType_ReturnValue;0x050C TouchSurfaceChange();0x051A goto Label_00E4;0x051F Label_051F:0x051F ClearActiveParticle();0x052D goto Label_0690;0x0532 Label_0532:0x0532 CallFunc_IsValid_ReturnValue = IsValid(ActiveSkidParticleTemplate);0x054F if (!(CallFunc_IsValid_ReturnValue)) goto Label_0690;0x055D BreakHitResult(WheelData.LastTrace, CallFunc_BreakHitResult_bBlockingHit, CallFunc_BreakHitResult_bInitialOverlap, CallFunc_BreakHitResult_Time, CallFunc_BreakHitResult_Distance, CallFunc_BreakHitResult_Location, CallFunc_BreakHitResult_ImpactPoint, CallFunc_BreakHitResult_Normal, CallFunc_BreakHitResult_ImpactNormal, CallFunc_BreakHitResult_PhysMat, CallFunc_BreakHitResult_HitActor, CallFunc_BreakHitResult_HitComponent, CallFunc_BreakHitResult_HitBoneName, CallFunc_BreakHitResult_BoneName, CallFunc_BreakHitResult_HitItem, CallFunc_BreakHitResult_ElementIndex, CallFunc_BreakHitResult_FaceIndex, CallFunc_BreakHitResult_TraceStart, CallFunc_BreakHitResult_TraceEnd);0x061B CallFunc_SpawnEmitterAtLocation_ReturnValue = SpawnEmitterAtLocation(this, ActiveSkidParticleTemplate, CallFunc_BreakHitResult_Location, FRotator(0, 0, 0), FVector(1, 1, 1), true, 0, true);0x0678 ActiveSkidParticle = CallFunc_SpawnEmitterAtLocation_ReturnValue;0x068B goto Label_02B9;0x0690 Label_0690:0x0690 return;Public 0x147c170 0x00 void SetIsDrivingWheel (bool IsDrivingWheel ) Script8 statements · 84 bytes of bytecode 0x0000 WheelConfig.IsDrivingWheel = IsDrivingWheel;0x001C if (!(IsDrivingWheel)) goto Label_002F;0x002A goto Label_0051;0x002F Label_002F:0x002F SetWheelTorque(false, 0, 0, false);0x0051 Label_0051:0x0051 return;Public 0x147c170 0x01 void SetDriveMotor (bool EnableMotor ) Script4 statements · 79 bytes of bytecode 0x0000 TurnConstraint.SetAngularDriveMode(1);0x0022 TurnConstraint.SetAngularVelocityDriveTwistAndSwing(false, EnableMotor);0x004C return;Private 0x147c170 0x01 void GetIsBrakeLocked (const bool & isBrakeLocked ) Script3 statements · 22 bytes of bytecode 0x0000 isBrakeLocked = isBrakeLocked;0x0013 return;Public 0x147c170 0x01 void SetIsBrakeLocked (bool isBrakeLocked ) Script3 statements · 22 bytes of bytecode 0x0000 isBrakeLocked = isBrakeLocked;0x0013 return;Public 0x147c170 0x01 void GetIsLocked (const bool & IsLocked ) Script3 statements · 22 bytes of bytecode 0x0000 IsLocked = IsLocked;0x0013 return;Public 0x147c170 0x01 void ResetPosition () Script11 statements · 272 bytes of bytecode 0x0000 GetWheelController(CallFunc_GetWheelController_ControllerMesh);0x0017 CallFunc_IsValid_ReturnValue = IsValid(CallFunc_GetWheelController_ControllerMesh);0x0034 if (!(CallFunc_IsValid_ReturnValue)) goto Label_010D;0x0042 GetWheelController(CallFunc_GetWheelController_ControllerMesh);0x0059 GetWheelMesh(CallFunc_GetWheelMesh_WheelMesh);0x0070 CallFunc_K2_GetComponentToWorld_ReturnValue = CallFunc_GetWheelController_ControllerMesh.K2_GetComponentToWorld();0x00A2 BreakTransform(CallFunc_K2_GetComponentToWorld_ReturnValue, CallFunc_BreakTransform_Location, CallFunc_BreakTransform_Rotation, CallFunc_BreakTransform_Scale);0x00D0 CallFunc_GetWheelMesh_WheelMesh.K2_SetWorldLocationAndRotation(CallFunc_BreakTransform_Location, CallFunc_BreakTransform_Rotation, false, CallFunc_K2_SetWorldLocationAndRotation_SweepHitResult, true);0x010D Label_010D:0x010D return;Public 0x147c170 0x00 void ResetSteering () Script5 statements · 110 bytes of bytecode 0x0000 GetWheelController(CallFunc_GetWheelController_ControllerMesh);0x0017 CallFunc_GetWheelController_ControllerMesh.K2_SetRelativeRotation(FRotator(0, 0, 0), false, CallFunc_K2_SetRelativeRotation_SweepHitResult, false);0x005B SetSteeringInput(0f, false);0x006B return;Public 0x147c170 0x00 void ChangeStaticMesh (UStaticMesh * NewMesh ) Script48 statements · 976 bytes of bytecode 0x0000 PushFlow(Label_03CD);0x0005 if (!(Constructed)) goto Label_02F1;0x0013 CallFunc_IsValid_ReturnValue = IsValid(NewMesh);0x0030 if (!(CallFunc_IsValid_ReturnValue)) goto Label_0305;0x003E K2Node_DynamicCast_AsStatic_Mesh_Component = Cast<StaticMeshComponent>(WheelMeshComponent);0x0062 K2Node_DynamicCast_bSuccess = Cast<1>(K2Node_DynamicCast_AsStatic_Mesh_Component);0x007F if (!(K2Node_DynamicCast_bSuccess)) goto Label_0305;0x008D WheelMeshComp = K2Node_DynamicCast_AsStatic_Mesh_Component;0x00A0 CallFunc_SetStaticMesh_ReturnValue = WheelMeshComp.SetStaticMesh(NewMesh);0x00D7 if (!(CallFunc_SetStaticMesh_ReturnValue)) PopFlow();0x00E1 UpdateWheelRadius();0x00EB Label_00EB:0x00EB isAttached = false;0x00F6 CallFunc_IsValid_ReturnValue_1 = IsValid(Vehicle);0x0113 if (!(CallFunc_IsValid_ReturnValue_1)) PopFlow();0x011D Attach(false, false);0x012D Vehicle.GetVehicleMesh(CallFunc_GetVehicleMesh_Mesh);0x015A CallFunc_IsSimulatingPhysics_ReturnValue = CallFunc_GetVehicleMesh_Mesh.IsSimulatingPhysics(FName(None));0x0195 SetPhysics(CallFunc_IsSimulatingPhysics_ReturnValue);0x01AC CallFunc_IsValid_ReturnValue_2 = IsValid(WheelMeshComp);0x01C9 if (!(CallFunc_IsValid_ReturnValue_2)) PopFlow();0x01D3 Temp_int_Loop_Counter_Variable = 0;0x01EA Temp_int_Array_Index_Variable = 0;0x0201 Label_0201:0x0201 CallFunc_GetMaterials_ReturnValue = WheelMeshComp.GetMaterials();0x0237 CallFunc_Array_Length_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Length(CallFunc_GetMaterials_ReturnValue);0x0272 CallFunc_Less_IntInt_ReturnValue = Less_IntInt(Temp_int_Loop_Counter_Variable, CallFunc_Array_Length_ReturnValue);0x0298 if (!(CallFunc_Less_IntInt_ReturnValue)) PopFlow();0x02A2 Temp_int_Array_Index_Variable = Temp_int_Loop_Counter_Variable;0x02BD PushFlow(Label_0383);0x02C2 WheelMeshComp.SetMaterial(Temp_int_Array_Index_Variable, nullptr);0x02F0 PopFlow();0x02F1 Label_02F1:0x02F1 WheelStaticMesh = NewMesh;0x0304 PopFlow();0x0305 Label_0305:0x0305 WheelStaticMesh = NewMesh;0x0318 Vehicle.DestroyWheelMesh(this);0x033D Vehicle.CreateWheelMesh(this, CallFunc_CreateWheelMesh_NewMesh);0x036B SetWheelMeshComponent(CallFunc_CreateWheelMesh_NewMesh);0x037E goto Label_00EB;0x0383 Label_0383:0x0383 CallFunc_Add_IntInt_ReturnValue = Add_IntInt(Temp_int_Loop_Counter_Variable, 1);0x03AD Temp_int_Loop_Counter_Variable = CallFunc_Add_IntInt_ReturnValue;0x03C8 goto Label_0201;0x03CD Label_03CD:0x03CD return;Public 0x147c170 0x08 void UpdateRotationSpeed () Script11 statements · 345 bytes of bytecode 0x0000 CallFunc_GetWheelAngVelInRadians_ReturnValue = GetWheelAngVelInRadians();0x001C CallFunc_Abs_A_ImplicitCast = Cast<4>(CallFunc_GetWheelAngVelInRadians_ReturnValue);0x0039 CallFunc_Abs_ReturnValue = Abs(CallFunc_Abs_A_ImplicitCast);0x005E Vehicle.GetSpeedUnitData(CallFunc_GetSpeedUnitData_SpeedUnit);0x008B CallFunc_GetMeshRadius_ReturnValue = GetMeshRadius(WheelMeshComponent, BoneName);0x00B9 CallFunc_Multiply_DoubleDouble_A_ImplicitCast = Cast<4>(CallFunc_GetMeshRadius_ReturnValue);0x00D6 CallFunc_Multiply_DoubleDouble_ReturnValue = Multiply_DoubleDouble(CallFunc_Multiply_DoubleDouble_A_ImplicitCast, CallFunc_Abs_ReturnValue);0x0104 CallFunc_Multiply_DoubleDouble_ReturnValue_1 = Multiply_DoubleDouble(CallFunc_Multiply_DoubleDouble_ReturnValue, CallFunc_GetSpeedUnitData_SpeedUnit.FromCm_15_9B54283E41D024D1F31615B18F094757);0x013B RotationSpeed = CallFunc_Multiply_DoubleDouble_ReturnValue_1;0x0156 return;Private 0x147c170 0x00 void GetWheelController (const UPrimitiveComponent * & ControllerMesh ) Script3 statements · 22 bytes of bytecode 0x0000 ControllerMesh = WheelController;0x0013 return;Public 0x147c170 0x08 void UpdateSkid () Script16 statements · 438 bytes of bytecode 0x0000 CallFunc_BooleanOR_ReturnValue = BooleanOR(SkidParticles, SkidSounds);0x0026 if (!(CallFunc_BooleanOR_ReturnValue)) goto Label_01B3;0x0034 Temp_real_Variable = 0;0x004F CallFunc_GetHasContact_ReturnValue = GetHasContact();0x0063 CallFunc_BooleanAND_ReturnValue = BooleanAND(CallFunc_GetHasContact_ReturnValue, isAttached);0x0089 Temp_bool_Variable = CallFunc_BooleanAND_ReturnValue;0x009C CallFunc_FInterpEaseInOut_ReturnValue = FInterpEaseInOut(Skid, Switch(Temp_bool_Variable, false => Temp_real_Variable, true => DesiredSkid, default => K2Node_Select_Default), 0.019999999552965164, 0.30000001192092896);0x0108 Skid = CallFunc_FInterpEaseInOut_ReturnValue;0x0123 if (!(SkidSounds)) goto Label_01B3;0x0131 CallFunc_IsValid_ReturnValue = IsValid(SkidAudio);0x014E if (!(CallFunc_IsValid_ReturnValue)) goto Label_01B3;0x015C CallFunc_SetFloatParameter_InFloat_ImplicitCast = Cast<3>(Skid);0x0179 SkidAudio.SetFloatParameter(FName(SkidForce), CallFunc_SetFloatParameter_InFloat_ImplicitCast);0x01B3 Label_01B3:0x01B3 return;Private 0x147c170 0x00 void GetRotationSpeed (const double & RotationSpeed ) Script3 statements · 30 bytes of bytecode 0x0000 RotationSpeed = RotationSpeed;0x001B return;Public 0x147c170 0x08 void DebugWarningOrError (const FString & Message , bool Error? ) Script9 statements · 337 bytes of bytecode 0x0000 Temp_bool_Variable = Error?;0x0013 Temp_struct_Variable = LinearColor{1f, 0f, 0f, 1f};0x0047 Temp_struct_Variable_1 = LinearColor{1f, 1f, 0f, 1f};0x007B CallFunc_GetDisplayName_ReturnValue = GetDisplayName(this);0x0098 CallFunc_Concat_StrStr_ReturnValue = Concat_StrStr(CallFunc_GetDisplayName_ReturnValue, " :: ");0x00C3 CallFunc_Concat_StrStr_ReturnValue_1 = Concat_StrStr(CallFunc_Concat_StrStr_ReturnValue, Message);0x00F1 PrintString(this, CallFunc_Concat_StrStr_ReturnValue_1, true, true, Switch(Temp_bool_Variable, false => Temp_struct_Variable_1, true => Temp_struct_Variable, default => K2Node_Select_Default), 15f, FName(None));0x014E return;Private 0x147c170 0x11 void Detach () Script23 statements · 579 bytes of bytecode 0x0000 isAttached = false;0x000B RotationSpeed = 0;0x0026 BreakAttachment();0x0034 CallFunc_IsValid_ReturnValue = IsValid(Vehicle);0x0051 if (!(CallFunc_IsValid_ReturnValue)) goto Label_0240;0x005F Vehicle.RefreshContactModification(false);0x0084 SwapVisibleMesh(false);0x0093 GetWheelMesh(CallFunc_GetWheelMesh_WheelMesh);0x00AA CallFunc_GetWheelMesh_WheelMesh.SetCollisionEnabled(0);0x00D0 GetWheelMesh(CallFunc_GetWheelMesh_WheelMesh);0x00E7 CallFunc_GetWheelMesh_WheelMesh.SetVisibility(false, true);0x0109 AttachPoint.SetHasWheel(false, Temp_struct_Variable);0x0137 CallFunc_IsServer_ReturnValue = IsServer(this);0x014C if (!(CallFunc_IsServer_ReturnValue)) goto Label_0240;0x015A GetWheelMesh(CallFunc_GetWheelMesh_WheelMesh);0x0171 CallFunc_K2_GetComponentToWorld_ReturnValue = CallFunc_GetWheelMesh_WheelMesh.K2_GetComponentToWorld();0x01A3 CallFunc_BeginDeferredActorSpawnFromClass_ReturnValue = BeginDeferredActorSpawnFromClass(this, /Game/Ride/Interactables/BP_Interactable_Wheel.BP_Interactable_Wheel_C, CallFunc_K2_GetComponentToWorld_ReturnValue, 0, nullptr, 1);0x01CF GetWheelMesh(CallFunc_GetWheelMesh_WheelMesh);0x01E6 CallFunc_K2_GetComponentToWorld_ReturnValue = CallFunc_GetWheelMesh_WheelMesh.K2_GetComponentToWorld();0x0218 CallFunc_FinishSpawningActor_ReturnValue = FinishSpawningActor(CallFunc_BeginDeferredActorSpawnFromClass_ReturnValue, CallFunc_K2_GetComponentToWorld_ReturnValue, 1);0x0240 Label_0240:0x0240 return;Public 0x147c170 0x00 void Attach (bool ResetPosition , bool Force ) Script12 statements · 205 bytes of bytecode 0x0000 Temp_bool_Variable = false;0x000B Temp_bool_Variable_1 = Force;0x001E isAttached = Switch(Temp_bool_Variable_1, false => isAttached, true => Temp_bool_Variable, default => K2Node_Select_Default);0x005D ResetWheelCollisions();0x0067 if (!(ResetPosition)) goto Label_0083;0x0075 ResetPosition();0x0083 Label_0083:0x0083 UpdateConstraints();0x0091 GetWheelMesh(CallFunc_GetWheelMesh_WheelMesh);0x00A8 CallFunc_GetWheelMesh_WheelMesh.SetVisibility(true, true);0x00CA return;Public 0x147c170 0x02 void SetPhysics (bool Simulate? ) Script26 statements · 519 bytes of bytecode 0x0000 SetIsSimulatingSuspension(Simulate?);0x0013 CallFunc_GetWheelMode_ReturnValue = GetWheelMode();0x002F K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetWheelMode_ReturnValue, 0);0x004E if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_008E;0x005C K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetWheelMode_ReturnValue, 1);0x007B if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0167;0x0089 goto Label_0204;0x008E Label_008E:0x008E CallFunc_GetIsAttached_ReturnValue = GetIsAttached();0x00A2 CallFunc_Not_PreBool_ReturnValue = Not_PreBool(CallFunc_GetIsAttached_ReturnValue);0x00BF CallFunc_K2_IsPhysicsCollisionEnabled_ReturnValue = WheelMeshComponent.K2_IsPhysicsCollisionEnabled();0x00E9 CallFunc_BooleanAND_ReturnValue = BooleanAND(Simulate?, CallFunc_Not_PreBool_ReturnValue);0x010F CallFunc_BooleanAND_ReturnValue_1 = BooleanAND(CallFunc_BooleanAND_ReturnValue, CallFunc_K2_IsPhysicsCollisionEnabled_ReturnValue);0x0135 WheelMeshComponent.SetSimulatePhysics(CallFunc_BooleanAND_ReturnValue_1);0x0162 goto Label_0204;0x0167 Label_0167:0x0167 WheelMeshComponent.SetSimulatePhysics(Simulate?);0x0194 if (!(Simulate?)) goto Label_01B6;0x01A2 SetChassisCollisions(false);0x01B1 goto Label_0204;0x01B6 Label_01B6:0x01B6 CallFunc_K2_AttachToComponent_ReturnValue = WheelMeshComponent.K2_AttachToComponent(this, FName(None), 1, 1, 1, true);0x01F5 SetChassisCollisions(true);0x0204 Label_0204:0x0204 return;Public 0x147c170 0x01 void LockWheel (bool Lock ) Script36 statements · 899 bytes of bytecode 0x0000 CallFunc_GetWheelMode_ReturnValue = GetWheelMode();0x001C K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetWheelMode_ReturnValue, 0);0x003B if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_007B;0x0049 K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetWheelMode_ReturnValue, 1);0x0068 if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0093;0x0076 goto Label_0380;0x007B Label_007B:0x007B IsLocked = Lock;0x008E goto Label_0380;0x0093 Label_0093:0x0093 CallFunc_NotEqual_BoolBool_ReturnValue = NotEqual_BoolBool(IsLocked, Lock);0x00B9 CallFunc_BooleanAND_ReturnValue = BooleanAND(CallFunc_NotEqual_BoolBool_ReturnValue, isAttached);0x00DF if (!(CallFunc_BooleanAND_ReturnValue)) goto Label_0380;0x00ED if (!(Lock)) goto Label_02D5;0x00FB CallFunc_K2_GetComponentToWorld_ReturnValue = WheelMeshComponent.K2_GetComponentToWorld();0x012D GetWheelController(CallFunc_GetWheelController_ControllerMesh);0x0144 CallFunc_K2_GetComponentToWorld_ReturnValue_1 = CallFunc_GetWheelController_ControllerMesh.K2_GetComponentToWorld();0x0176 CallFunc_MakeRelativeTransform_ReturnValue = MakeRelativeTransform(CallFunc_K2_GetComponentToWorld_ReturnValue, CallFunc_K2_GetComponentToWorld_ReturnValue_1);0x01A4 BreakTransform(CallFunc_MakeRelativeTransform_ReturnValue, CallFunc_BreakTransform_Location, CallFunc_BreakTransform_Rotation, CallFunc_BreakTransform_Scale);0x01D2 CallFunc_GetRightVector_ReturnValue = GetRightVector(CallFunc_BreakTransform_Rotation);0x01F7 CallFunc_GetForwardVector_ReturnValue = GetForwardVector(CallFunc_BreakTransform_Rotation);0x021C TurnConstraint.SetConstraintReferenceOrientation(0, CallFunc_GetForwardVector_ReturnValue, CallFunc_GetRightVector_ReturnValue);0x0250 TurnConstraint.SetAngularSwing1Limit(2, 0f);0x0277 TurnConstraint.SetAngularTwistLimit(2, 40f);0x029E TurnConstraint.SetAngularSwing2Limit(2, 0f);0x02C5 IsLocked = true;0x02D0 goto Label_0380;0x02D5 Label_02D5:0x02D5 TurnConstraint.SetConstraintReferenceFrame(0, SpawnRelTransform);0x0300 TurnConstraint.SetAngularSwing1Limit(2, 0f);0x0327 TurnConstraint.SetAngularTwistLimit(2, 40f);0x034E TurnConstraint.SetAngularSwing2Limit(0, 0f);0x0375 IsLocked = false;0x0380 Label_0380:0x0380 return;Public 0x147c170 0x01 void UpdateWheel () Script17 statements · 470 bytes of bytecode 0x0000 UpdateSkid();0x000E CleanupSkidParticle();0x001C if (!(isAttached)) goto Label_01D3;0x002A UpdateRotationSpeed();0x0038 CallFunc_K2_GetComponentToWorld_ReturnValue = K2_GetComponentToWorld();0x0054 CallFunc_GetSteeringAngle_ReturnValue = GetSteeringAngle();0x0070 Vehicle.GetVehicleMesh(CallFunc_GetVehicleMesh_Mesh);0x009D CallFunc_MakeRotator_ReturnValue = MakeRotator(0f, 0f, CallFunc_GetSteeringAngle_ReturnValue);0x00CC CallFunc_K2_GetComponentToWorld_ReturnValue_1 = CallFunc_GetVehicleMesh_Mesh.K2_GetComponentToWorld();0x00FE CallFunc_MakeRelativeTransform_ReturnValue = MakeRelativeTransform(CallFunc_K2_GetComponentToWorld_ReturnValue, CallFunc_K2_GetComponentToWorld_ReturnValue_1);0x012C GetWheelController(CallFunc_GetWheelController_ControllerMesh);0x0143 BreakTransform(CallFunc_MakeRelativeTransform_ReturnValue, CallFunc_BreakTransform_Location, CallFunc_BreakTransform_Rotation, CallFunc_BreakTransform_Scale);0x0171 CallFunc_ComposeRotators_ReturnValue = ComposeRotators(CallFunc_BreakTransform_Rotation, CallFunc_MakeRotator_ReturnValue);0x019F CallFunc_GetWheelController_ControllerMesh.K2_SetRelativeRotation(CallFunc_ComposeRotators_ReturnValue, false, CallFunc_K2_SetRelativeRotation_SweepHitResult, false);0x01D3 Label_01D3:0x01D3 return;Public 0x147c170 0x00 void GetWheelMesh (const UPrimitiveComponent * & WheelMesh ) Script3 statements · 22 bytes of bytecode 0x0000 WheelMesh = WheelMeshComponent;0x0013 return;Public 0x147c170 0x08 void CalculateSkidAmount () Script21 statements · 439 bytes of bytecode 0x0000 WheelVelocity = FVector(0, 0, 0);0x002B CallFunc_GetWheelVelocity_ReturnValue = GetWheelVelocity(true);0x0048 WheelVelocity = CallFunc_GetWheelVelocity_ReturnValue;0x0063 CallFunc_VSizeXY_ReturnValue = VSizeXY(WheelVelocity);0x0088 CallFunc_Greater_DoubleDouble_ReturnValue = Greater_DoubleDouble(CallFunc_VSizeXY_ReturnValue, 10);0x00AE if (!(CallFunc_Greater_DoubleDouble_ReturnValue)) goto Label_0126;0x00BC GetIsLocked(CallFunc_GetIsLocked_isLocked);0x00D3 if (!(CallFunc_GetIsLocked_isLocked)) goto Label_0146;0x00E1 CallFunc_VSizeXY_ReturnValue = VSizeXY(WheelVelocity);0x0106 DesiredSkid = CallFunc_VSizeXY_ReturnValue;0x0121 goto Label_01B4;0x0126 Label_0126:0x0126 DesiredSkid = 0;0x0141 goto Label_01B4;0x0146 Label_0146:0x0146 BreakVector(WheelVelocity, CallFunc_BreakVector_X, CallFunc_BreakVector_Y, CallFunc_BreakVector_Z);0x0174 CallFunc_Abs_ReturnValue = Abs(CallFunc_BreakVector_Y);0x0199 DesiredSkid = CallFunc_Abs_ReturnValue;0x01B4 Label_01B4:0x01B4 return;Private 0x147c170 0x00 void CalculateSkidDirection (const FVector & Velocity , const FRotator & WheelForward , const FRotator & MarkDirection ) Script25 statements · 874 bytes of bytecode 0x0000 CallFunc_Conv_VectorToRotator_ReturnValue = Conv_VectorToRotator(Velocity);0x0025 CallFunc_NormalizedDeltaRotator_ReturnValue = NormalizedDeltaRotator(CallFunc_Conv_VectorToRotator_ReturnValue, WheelForward);0x0053 RelativeVelocity = CallFunc_NormalizedDeltaRotator_ReturnValue;0x006E BreakRotator(RelativeVelocity, CallFunc_BreakRotator_Roll, CallFunc_BreakRotator_Pitch, CallFunc_BreakRotator_Yaw);0x009C CallFunc_Abs_A_ImplicitCast = Cast<4>(CallFunc_BreakRotator_Yaw);0x00B9 CallFunc_Abs_ReturnValue = Abs(CallFunc_Abs_A_ImplicitCast);0x00DE CallFunc_Greater_DoubleDouble_ReturnValue = Greater_DoubleDouble(CallFunc_Abs_ReturnValue, 90);0x0104 if (!(CallFunc_Greater_DoubleDouble_ReturnValue)) goto Label_0176;0x0112 CallFunc_ComposeRotators_ReturnValue_1 = ComposeRotators(RelativeVelocity, FRotator(0, 180, 0));0x0150 RelativeVelocity = CallFunc_ComposeRotators_ReturnValue_1;0x016B VelocityInverted = true;0x0176 Label_0176:0x0176 CallFunc_ComposeRotators_ReturnValue = ComposeRotators(WheelForward, FRotator(0, 180, 0));0x01B4 Temp_bool_Variable = VelocityInverted;0x01C7 BreakRotator(RelativeVelocity, CallFunc_BreakRotator_Roll_1, CallFunc_BreakRotator_Pitch_1, CallFunc_BreakRotator_Yaw_1);0x01F5 BreakRotator(Switch(Temp_bool_Variable, false => WheelForward, true => CallFunc_ComposeRotators_ReturnValue, default => K2Node_Select_Default), CallFunc_BreakRotator_Roll_2, CallFunc_BreakRotator_Pitch_2, CallFunc_BreakRotator_Yaw_2);0x024F CallFunc_MapRangeClamped_Value_ImplicitCast = Cast<4>(CallFunc_BreakRotator_Yaw_1);0x026C CallFunc_MapRangeClamped_ReturnValue = MapRangeClamped(CallFunc_MapRangeClamped_Value_ImplicitCast, -90, 90, -30, 30);0x02B5 CallFunc_Add_DoubleDouble_B_ImplicitCast = Cast<4>(CallFunc_BreakRotator_Yaw_2);0x02D2 CallFunc_Add_DoubleDouble_ReturnValue = Add_DoubleDouble(CallFunc_MapRangeClamped_ReturnValue, CallFunc_Add_DoubleDouble_B_ImplicitCast);0x0300 CallFunc_MakeRotator_Yaw_ImplicitCast = Cast<3>(CallFunc_Add_DoubleDouble_ReturnValue);0x031D CallFunc_MakeRotator_ReturnValue = MakeRotator(90f, 0f, CallFunc_MakeRotator_Yaw_ImplicitCast);0x034C MarkDirection = CallFunc_MakeRotator_ReturnValue;0x0367 return;Public 0x147c170 0x48 void InitBonePhysics () Script32 statements · 1,071 bytes of bytecode 0x0000 if (!(ConnectToBone)) goto Label_042C;0x000E K2Node_DynamicCast_AsSkeletal_Mesh_Component = Cast<SkeletalMeshComponent>(ParentPrim);0x0032 K2Node_DynamicCast_bSuccess = Cast<1>(K2Node_DynamicCast_AsSkeletal_Mesh_Component);0x004F if (!(K2Node_DynamicCast_bSuccess)) goto Label_042C;0x005D CallFunc_IsValid_ReturnValue_1 = IsValid(BoneConstraint);0x007A if (!(CallFunc_IsValid_ReturnValue_1)) goto Label_00B5;0x0088 Vehicle.DestroyOwnedComponent(BoneConstraint);0x00B5 Label_00B5:0x00B5 CallFunc_GetWheelMode_ReturnValue = GetWheelMode();0x00D1 K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetWheelMode_ReturnValue, 0);0x00F0 if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0130;0x00FE K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetWheelMode_ReturnValue, 1);0x011D if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_01A7;0x012B goto Label_042C;0x0130 Label_0130:0x0130 DebugWarningOrError("\"Connect to Bone\" not supported in Raycast wheel mode!", false);0x0177 K2Node_DynamicCast_AsSkeletal_Mesh_Component.SetAllBodiesBelowSimulatePhysics(BoneName, false, true);0x01A2 goto Label_042C;0x01A7 Label_01A7:0x01A7 Vehicle.CreateBoneConstraint(false, FTransform(...), CallFunc_CreateBoneConstraint_VehicleConstraint);0x0226 BoneConstraint = CallFunc_CreateBoneConstraint_VehicleConstraint;0x0239 CallFunc_IsValid_ReturnValue = IsValid(ProjectedMesh);0x0256 Temp_bool_Variable = CallFunc_IsValid_ReturnValue;0x0269 BoneConstraint.SetConstrainedComponents(K2Node_DynamicCast_AsSkeletal_Mesh_Component, BoneName, Switch(Temp_bool_Variable, false => WheelMeshComponent, true => ProjectedMesh, default => K2Node_Select_Default), FName(None));0x02DD CallFunc_MakeTransform_ReturnValue = MakeTransform(FVector(0, 0, 0), FRotator(0, 0, 0), FVector(1, 1, 1));0x0344 BoneConstraint.SetConstraintReferenceFrame(0, CallFunc_MakeTransform_ReturnValue);0x036F CallFunc_MakeTransform_ReturnValue_1 = MakeTransform(FVector(0, 0, 0), FRotator(0, 0, 0), FVector(1, 1, 1));0x03D6 BoneConstraint.SetConstraintReferenceFrame(1, CallFunc_MakeTransform_ReturnValue_1);0x0401 K2Node_DynamicCast_AsSkeletal_Mesh_Component.SetAllBodiesBelowSimulatePhysics(BoneName, true, true);0x042C Label_042C:0x042C return;Private 0x147c170 0x00 void InitializeWheel (AAVS_Vehicle_C * Owner ) Script15 statements · 215 bytes of bytecode 0x0000 Vehicle = Owner;0x0013 ResetWheelCollisions();0x001D InitSkidSounds();0x002B InitSkidParticles();0x0039 UpdateConstraints();0x0047 InitBonePhysics();0x0055 CallFunc_Not_PreBool_ReturnValue = Not_PreBool(HaveInitializedFromLoadYet);0x0072 CallFunc_IsServer_ReturnValue = IsServer(this);0x0087 CallFunc_BooleanAND_ReturnValue = BooleanAND(CallFunc_IsServer_ReturnValue, CallFunc_Not_PreBool_ReturnValue);0x00AD if (!(CallFunc_BooleanAND_ReturnValue)) goto Label_00D4;0x00BB WaitForScrewsAndInitializeLoadedScrewDamage();0x00C9 HaveInitializedFromLoadYet = true;0x00D4 Label_00D4:0x00D4 return;Public 0x147c170 0x08 void Construct () Script31 statements · 625 bytes of bytecode 0x0000 CallFunc_Not_PreBool_ReturnValue = Not_PreBool(Constructed);0x001D if (!(CallFunc_Not_PreBool_ReturnValue)) goto Label_026E;0x002B Constructed = true;0x0036 CallFunc_GetAttachParent_ReturnValue = GetAttachParent();0x004A K2Node_DynamicCast_AsPrimitive_Component_1 = Cast<PrimitiveComponent>(CallFunc_GetAttachParent_ReturnValue);0x006E K2Node_DynamicCast_bSuccess_2 = Cast<1>(K2Node_DynamicCast_AsPrimitive_Component_1);0x008B if (!(K2Node_DynamicCast_bSuccess_2)) goto Label_026E;0x0099 ParentPrim = K2Node_DynamicCast_AsPrimitive_Component_1;0x00AC CallFunc_GetChildComponent_ReturnValue = GetChildComponent(0);0x00C5 K2Node_DynamicCast_AsPrimitive_Component = Cast<PrimitiveComponent>(CallFunc_GetChildComponent_ReturnValue);0x00E9 K2Node_DynamicCast_bSuccess_1 = Cast<1>(K2Node_DynamicCast_AsPrimitive_Component);0x0106 if (!(K2Node_DynamicCast_bSuccess_1)) goto Label_01DF;0x0114 SetWheelMeshComponent(K2Node_DynamicCast_AsPrimitive_Component);0x0127 CallFunc_GetRelativeTransform_ReturnValue = WheelMeshComponent.GetRelativeTransform();0x0159 SpawnRelTransform = CallFunc_GetRelativeTransform_ReturnValue;0x0174 UpdateWheelMeshProperties();0x0182 CallFunc_IsValid_ReturnValue = IsValid(PhysicsMaterial);0x019F if (!(CallFunc_IsValid_ReturnValue)) goto Label_026E;0x01AD K2Node_DynamicCast_AsPrimitive_Component.SetPhysMaterialOverride(PhysicsMaterial);0x01DA goto Label_026E;0x01DF Label_01DF:0x01DF CallFunc_GetChildComponent_ReturnValue = GetChildComponent(0);0x01F8 K2Node_DynamicCast_AsVehicle_Wheel = Cast<Vehicle_Wheel_C>(CallFunc_GetChildComponent_ReturnValue);0x021C K2Node_DynamicCast_bSuccess = Cast<1>(K2Node_DynamicCast_AsVehicle_Wheel);0x0239 if (!(K2Node_DynamicCast_bSuccess)) goto Label_024C;0x0247 goto Label_026E;0x024C Label_024C:0x024C DebugWarningOrError("No mesh detected!", true);0x026E Label_026E:0x026E return;Public 0x147c170 0x00 void UpdateConstraints () Script26 statements · 334 bytes of bytecode 0x0000 CallFunc_IsValid_ReturnValue = IsValid(Vehicle);0x001D if (!(CallFunc_IsValid_ReturnValue)) goto Label_014B;0x002B CreateWheelController();0x0039 UpdateLocalTransformCache();0x0043 CallFunc_GetWheelMode_ReturnValue = GetWheelMode();0x005F K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetWheelMode_ReturnValue, 0);0x007E if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_00BE;0x008C K2Node_SwitchEnum_CmpSuccess = NotEqual_ByteByte(CallFunc_GetWheelMode_ReturnValue, 1);0x00AB if (!(K2Node_SwitchEnum_CmpSuccess)) goto Label_0138;0x00B9 goto Label_014B;0x00BE Label_00BE:0x00BE DestroyPhysConstraints();0x00CC Label_00CC:0x00CC isAttached = true;0x00D7 Vehicle.RefreshContactModification(false);0x00FC SwapVisibleMesh(true);0x010B if (!(IsLocked)) goto Label_014B;0x0119 IsLocked = false;0x0124 LockWheel(true);0x0133 goto Label_014B;0x0138 Label_0138:0x0138 ConfigurePhysConstraints();0x0146 goto Label_00CC;0x014B Label_014B:0x014B return;Private 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_Vehicle_Wheel(1906);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_Vehicle_Wheel(1907);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_Vehicle_Wheel(1908);0x0033 return;Public 0x147c170 0x40 void StartCooking (int32 Heat ) Script4 statements · 36 bytes of bytecode 0x0000 PersistentFrame.K2Node_Event_Heat_1 = Heat;0x0012 ExecuteUbergraph_Vehicle_Wheel(1909);0x0021 return;Public 0x147c170 0x04 void StopCooking () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_Vehicle_Wheel(1910);0x000F return;Public 0x147c170 0x00 void StartWelding (int32 Heat ) Script4 statements · 36 bytes of bytecode 0x0000 PersistentFrame.K2Node_Event_Heat = Heat;0x0012 ExecuteUbergraph_Vehicle_Wheel(1911);0x0021 return;Public 0x147c170 0x04 void StopWelding () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_Vehicle_Wheel(1912);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_Vehicle_Wheel(1913);0x0033 return;Public 0x147c170 0x09 void ReceiveEndPlay (const EEndPlayReason & EndPlayReason ) Script4 statements · 36 bytes of bytecode 0x0000 PersistentFrame.K2Node_Event_EndPlayReason = EndPlayReason;0x0012 ExecuteUbergraph_Vehicle_Wheel(1914);0x0021 return;Event Public 0x147c170 0x01 void ReceiveTick (float DeltaSeconds ) Script4 statements · 36 bytes of bytecode 0x0000 PersistentFrame.K2Node_Event_DeltaSeconds = DeltaSeconds;0x0012 ExecuteUbergraph_Vehicle_Wheel(1933);0x0021 return;Event Public 0x147c170 0x04 void PassiveStateChanged (bool NewPassiveState ) Script4 statements · 36 bytes of bytecode 0x0000 PersistentFrame.K2Node_Event_NewPassiveState = NewPassiveState;0x0012 ExecuteUbergraph_Vehicle_Wheel(2141);0x0021 return;Event Public 0x147c170 0x01 void ReceiveBeginPlay () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_Vehicle_Wheel(2166);0x000F return;Event Public 0x147c170 0x00 void ScrewedIn (ABP_ScrewHole_C * ScrewHole , ABP_FirstPersonCharacter_C * PlayerScrewing ) Script5 statements · 54 bytes of bytecode 0x0000 PersistentFrame.K2Node_CustomEvent_ScrewHole = ScrewHole;0x0012 PersistentFrame.K2Node_CustomEvent_PlayerScrewing = PlayerScrewing;0x0024 ExecuteUbergraph_Vehicle_Wheel(2351);0x0033 return;0x147c170 0x10 void ScrewedOut (ABP_ScrewHole_C * ScrewHolle ) Script4 statements · 36 bytes of bytecode 0x0000 PersistentFrame.K2Node_CustomEvent_ScrewHolle = ScrewHolle;0x0012 ExecuteUbergraph_Vehicle_Wheel(3381);0x0021 return;0x147c170 0x08 void AddNewWheel () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_Vehicle_Wheel(3437);0x000F return;0x147c170 0x00 void WaitForScrewsAndInitializeDamage () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_Vehicle_Wheel(3511);0x000F return;0x147c170 0x00 void CheckScrews () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_Vehicle_Wheel(3616);0x000F return;0x147c170 0x00 void WaitForScrewsAndInitializeLoadedScrewDamage () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_Vehicle_Wheel(3828);0x000F return;0x147c170 0x00 void Try () Script3 statements · 18 bytes of bytecode 0x0000 ExecuteUbergraph_Vehicle_Wheel(3833);0x000F return;0x147c170 0x00 void OnWheelDistanceTraveled (float DistanceTraveledSinceLastFrame ) Script4 statements · 36 bytes of bytecode 0x0000 PersistentFrame.K2Node_Event_DistanceTraveledSinceLastFrame = DistanceTraveledSinceLastFrame;0x0012 ExecuteUbergraph_Vehicle_Wheel(3838);0x0021 return;Event Protected 0x147c170 0x04 void ExecuteUbergraph_Vehicle_Wheel (int32 EntryPoint ) Script187 statements · 3,846 bytes of bytecode 0x0000 PushFlow(Label_0F03);0x0005 goto [EntryPoint];0x000F Label_000F:0x000F StopActiveRollingSFX();0x001D PopFlow();0x001E CallFunc_K2_GetComponentLocation_ReturnValue = K2_GetComponentLocation();0x003A InitialLocation = CallFunc_K2_GetComponentLocation_ReturnValue;0x0055 PopFlow();0x0056 Label_0056:0x0056 OnRep_IceGripValue();0x0064 PopFlow();0x0065 Label_0065:0x0065 MarkPropertyDirtyFromRepIndex(this, 20, FName(IceGripValue));0x0082 goto Label_0056;0x0087 Label_0087:0x0087 CallFunc_IsValid_ReturnValue = IsValid(RollingTireSFX);0x00A4 if (!(CallFunc_IsValid_ReturnValue)) goto Label_00B3;0x00B2 PopFlow();0x00B3 Label_00B3:0x00B3 CallFunc_SpawnSoundAttached_ReturnValue = SpawnSoundAttached(/Game/Ride/Vehicle/Sounds/Tire/Loops/MSS_Vehicle_Tires_Rolling_Switch.MSS_Vehicle_Tires_Rolling_Switch, this, FName(None), FVector(0, 0, 0), FRotator(0, 0, 0), 0, false, 1f, 1f, 0f, nullptr, nullptr, true);0x0125 RollingTireSFX = CallFunc_SpawnSoundAttached_ReturnValue;0x0138 PopFlow();0x0139 Label_0139:0x0139 CallFunc_Add_IntInt_ReturnValue = Add_IntInt(Temp_int_Loop_Counter_Variable, 1);0x0163 Temp_int_Loop_Counter_Variable = CallFunc_Add_IntInt_ReturnValue;0x017E Label_017E:0x017E CallFunc_Array_Length_ReturnValue_1 = /Script/Engine.Default__KismetArrayLibrary.Array_Length(ScrewHoles);0x01B9 CallFunc_Less_IntInt_ReturnValue_1 = Less_IntInt(Temp_int_Loop_Counter_Variable, CallFunc_Array_Length_ReturnValue_1);0x01DF if (!(CallFunc_Less_IntInt_ReturnValue_1)) goto Label_0381;0x01ED Temp_int_Array_Index_Variable = Temp_int_Loop_Counter_Variable;0x0208 PushFlow(Label_0139);0x020D /Script/Engine.Default__KismetArrayLibrary.Array_Get(ScrewHoles, Temp_int_Array_Index_Variable, CallFunc_Array_Get_Item_2);0x0248 CallFunc_IsValid_ReturnValue_2 = IsValid(CallFunc_Array_Get_Item_2);0x0265 if (!(CallFunc_IsValid_ReturnValue_2)) PopFlow();0x026F /Script/Engine.Default__KismetArrayLibrary.Array_Get(ScrewHoles, Temp_int_Array_Index_Variable, CallFunc_Array_Get_Item_2);0x02AA /Script/Engine.Default__KismetArrayLibrary.Array_Get(ScrewDamage, Temp_int_Array_Index_Variable, CallFunc_Array_Get_Item_3);0x02E5 CallFunc_Conv_IntToDouble_ReturnValue = Conv_IntToDouble(CallFunc_Array_Get_Item_3);0x030A CallFunc_MapRangeClamped_ReturnValue = MapRangeClamped(CallFunc_Conv_IntToDouble_ReturnValue, 0, 5, 1, 0);0x0353 CallFunc_Array_Get_Item_2.UpdateScrewAmountFromDamage(CallFunc_MapRangeClamped_ReturnValue);0x0380 PopFlow();0x0381 Label_0381:0x0381 K2_ClearAndInvalidateTimerHandle(this, WaitForScrewsTimer);0x0395 PopFlow();0x0396 Label_0396:0x0396 Temp_int_Loop_Counter_Variable = 0;0x03AD Temp_int_Array_Index_Variable = 0;0x03C4 goto Label_017E;0x03C9 Label_03C9:0x03C9 Temp_int_Loop_Counter_Variable_1 = 0;0x03E0 Temp_int_Array_Index_Variable_1 = 0;0x03F7 Label_03F7:0x03F7 CallFunc_Array_Length_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Length(K2Node_DynamicCast_AsBP_Vehicle_Winnebago_01.CurrentDamage);0x0448 CallFunc_Less_IntInt_ReturnValue = Less_IntInt(Temp_int_Loop_Counter_Variable_1, CallFunc_Array_Length_ReturnValue);0x046E if (!(CallFunc_Less_IntInt_ReturnValue)) goto Label_0599;0x047C Temp_int_Array_Index_Variable_1 = Temp_int_Loop_Counter_Variable_1;0x0497 PushFlow(Label_05AE);0x049C /Script/Engine.Default__KismetArrayLibrary.Array_Get(K2Node_DynamicCast_AsBP_Vehicle_Winnebago_01.CurrentDamage, Temp_int_Array_Index_Variable_1, CallFunc_Array_Get_Item_1);0x04ED CallFunc_MatchesTag_ReturnValue = MatchesTag(CallFunc_Array_Get_Item_1.Tag, WheelTag, true);0x051D if (!(CallFunc_MatchesTag_ReturnValue)) PopFlow();0x0527 /Script/Engine.Default__KismetArrayLibrary.Array_Get(K2Node_DynamicCast_AsBP_Vehicle_Winnebago_01.CurrentDamage, Temp_int_Array_Index_Variable_1, CallFunc_Array_Get_Item_1);0x0578 TakeWheelDamage(CallFunc_Array_Get_Item_1.Value);0x0598 PopFlow();0x0599 Label_0599:0x0599 K2_ClearAndInvalidateTimerHandle(this, ServerLoadScrewTimer);0x05AD PopFlow();0x05AE Label_05AE:0x05AE CallFunc_Add_IntInt_ReturnValue_1 = Add_IntInt(Temp_int_Loop_Counter_Variable_1, 1);0x05D8 Temp_int_Loop_Counter_Variable_1 = CallFunc_Add_IntInt_ReturnValue_1;0x05F3 goto Label_03F7;0x05F8 Label_05F8:0x05F8 K2Node_CreateDelegate_OutputDelegate.Bind(this, Try);0x060F CallFunc_K2_SetTimerDelegate_ReturnValue = K2_SetTimerDelegate(K2Node_CreateDelegate_OutputDelegate, 0.1f, true, false, 0f, 0f);0x0645 ServerLoadScrewTimer = CallFunc_K2_SetTimerDelegate_ReturnValue;0x0660 PopFlow();0x0661 Label_0661:0x0661 CallFunc_GetOwner_ReturnValue = GetOwner();0x0675 CallFunc_HasAuthority_ReturnValue = CallFunc_GetOwner_ReturnValue.HasAuthority();0x069F if (!(CallFunc_HasAuthority_ReturnValue)) PopFlow();0x06A9 CallFunc_Greater_DoubleDouble_ReturnValue = Greater_DoubleDouble(IceGripValue, 0);0x06CF if (!(CallFunc_Greater_DoubleDouble_ReturnValue)) PopFlow();0x06D9 CallFunc_Subtract_DoubleDouble_B_ImplicitCast = Cast<4>(K2Node_Event_DistanceTraveledSinceLastFrame);0x06F6 CallFunc_Subtract_DoubleDouble_ReturnValue = Subtract_DoubleDouble(IceGripValue, CallFunc_Subtract_DoubleDouble_B_ImplicitCast);0x0724 CallFunc_FMax_ReturnValue = FMax(CallFunc_Subtract_DoubleDouble_ReturnValue, 0);0x0752 IceGripValue = CallFunc_FMax_ReturnValue;0x076D goto Label_0065;0x0772 PopFlow();0x0773 PopFlow();0x0774 PopFlow();0x0775 PopFlow();0x0776 PopFlow();0x0777 PopFlow();0x0778 PopFlow();0x0779 PopFlow();0x077A CleanupForDestroy();0x0788 goto Label_000F;0x078D ReceiveTick(K2Node_Event_DeltaSeconds);0x07A0 UpdateSkidEffects();0x07AE Update_VFX_SmokeTrail();0x07BC Update_WheelRolling_SFX();0x07CA Update_WheelSkid_SFX();0x07D8 Update_WheelSuspension_SFX();0x07E6 CallFunc_WearDownIceStuds_DeltaTime_ImplicitCast = Cast<4>(K2Node_Event_DeltaSeconds);0x0803 WearDownIceStuds(CallFunc_WearDownIceStuds_DeltaTime_ImplicitCast);0x081A CallFunc_UpdatePhysMatFromTrace_DeltaTime_ImplicitCast = Cast<4>(K2Node_Event_DeltaSeconds);0x0837 UpdatePhysMatFromTrace(CallFunc_UpdatePhysMatFromTrace_DeltaTime_ImplicitCast);0x084E AffectSnow();0x085C PopFlow();0x085D if (!(K2Node_Event_NewPassiveState)) PopFlow();0x0867 ClearActiveParticle();0x0875 PopFlow();0x0876 PushFlow(Label_08F8);0x087B PushFlow(Label_088A);0x0880 PushFlow(Label_08CA);0x0885 goto Label_0087;0x088A Label_088A:0x088A GetWheelMesh(CallFunc_GetWheelMesh_WheelMesh);0x08A1 CallFunc_GetWheelMesh_WheelMesh.SetCollisionResponseToChannel(2, 0);0x08C9 PopFlow();0x08CA Label_08CA:0x08CA CallFunc_IsServer_ReturnValue = IsServer(this);0x08DF if (!(CallFunc_IsServer_ReturnValue)) PopFlow();0x08E9 SetupScrews();0x08F7 PopFlow();0x08F8 Label_08F8:0x08F8 Delay(this, 2f, LatentActionInfo{0x1E, -1042246426, FName(ExecuteUbergraph_Vehicle_Wheel), this});0x092E PopFlow();0x092F CallFunc_IsValid_ReturnValue_1 = IsValid(K2Node_CustomEvent_PlayerScrewing);0x094C if (!(CallFunc_IsValid_ReturnValue_1)) PopFlow();0x0956 CallFunc_Array_Find_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Find(ScrewHoles, K2Node_CustomEvent_ScrewHole);0x099A /Script/Engine.Default__KismetArrayLibrary.Array_Get(ScrewDamage, CallFunc_Array_Find_ReturnValue, CallFunc_Array_Get_Item);0x09D5 CallFunc_Greater_IntInt_ReturnValue = Greater_IntInt(CallFunc_Array_Get_Item, 0);0x09F7 if (!(CallFunc_Greater_IntInt_ReturnValue)) PopFlow();0x0A01 CallFunc_GetAttachParent_ReturnValue = GetAttachParent();0x0A15 CallFunc_GetOwner_ReturnValue_1 = CallFunc_GetAttachParent_ReturnValue.GetOwner();0x0A3F K2Node_DynamicCast_AsBPI_Vehicle = Cast<BPI_Vehicle_C>(CallFunc_GetOwner_ReturnValue_1);0x0A63 K2Node_DynamicCast_bSuccess = Cast<2>(K2Node_DynamicCast_AsBPI_Vehicle);0x0A80 if (!(K2Node_DynamicCast_bSuccess)) goto Label_0CF8;0x0A8E K2Node_DynamicCast_AsBPI_Vehicle.GetWheelTag(this, CallFunc_GetWheelTag_Success, CallFunc_GetWheelTag_WheelTag);0x0AC6 Label_0AC6:0x0AC6 if (!(CallFunc_GetWheelTag_Success)) PopFlow();0x0AD0 CallFunc_Array_Find_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Find(ScrewHoles, K2Node_CustomEvent_ScrewHole);0x0B14 CallFunc_GetAttachParent_ReturnValue = GetAttachParent();0x0B28 CallFunc_GetOwner_ReturnValue_1 = CallFunc_GetAttachParent_ReturnValue.GetOwner();0x0B52 /Script/Engine.Default__KismetArrayLibrary.Array_Get(ScrewDamage, CallFunc_Array_Find_ReturnValue, CallFunc_Array_Get_Item);0x0B8D K2Node_MakeStruct_ST_Damage_Result.DamageType_3_42A87BC046D21D82BBBC0E856286E2CD = CallFunc_GetWheelTag_WheelTag;0x0BB1 K2Node_MakeStruct_ST_Damage_Result.Damage_7_F3292EDF44790F4AED9654BACA71838A = CallFunc_Array_Get_Item;0x0BD5 K2Node_MakeStruct_ST_Damage_Result.MaxVehicleShieldConsumption_10_E95C0831458EF361CE55AF89624199AE = 0;0x0BF5 K2Node_MakeStruct_ST_Damage_Result.SkipVehicleShield_12_17FC8070442367387C3CBFB05060541B = false;0x0C09 K2Node_MakeArray_Array = {K2Node_MakeStruct_ST_Damage_Result};0x0C1D K2Node_MakeStruct_ST_Damage_Results.DamageResults_3_42A87BC046D21D82BBBC0E856286E2CD = K2Node_MakeArray_Array;0x0C41 K2Node_CustomEvent_PlayerScrewing.Server_RepairDamage(CallFunc_GetOwner_ReturnValue_1, K2Node_MakeStruct_ST_Damage_Results);0x0C77 CallFunc_Array_Find_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Find(ScrewHoles, K2Node_CustomEvent_ScrewHole);0x0CBB /Script/Engine.Default__KismetArrayLibrary.Array_Set(ScrewDamage, CallFunc_Array_Find_ReturnValue, Temp_int_Variable, false);0x0CF7 PopFlow();0x0CF8 Label_0CF8:0x0CF8 CallFunc_GetWheelTag_Success = false;0x0D03 CallFunc_GetWheelTag_WheelTag = GameplayTag{FName(None)};0x0D30 goto Label_0AC6;0x0D35 if (!(AttachPoint.HasWheel)) PopFlow();0x0D55 TryPopOffWheel(CallFunc_TryPopOffWheel_PoppedOff);0x0D6C PopFlow();0x0D6D Attach(true, true);0x0D7D GetWheelMesh(CallFunc_GetWheelMesh_WheelMesh_1);0x0D94 CallFunc_GetWheelMesh_WheelMesh_1.SetVisibility(true, true);0x0DB6 PopFlow();0x0DB7 K2Node_CreateDelegate_OutputDelegate_1.Bind(this, CheckScrews);0x0DCE CallFunc_K2_SetTimerDelegate_ReturnValue_1 = K2_SetTimerDelegate(K2Node_CreateDelegate_OutputDelegate_1, 0.1f, true, false, 0f, 0f);0x0E04 WaitForScrewsTimer = CallFunc_K2_SetTimerDelegate_ReturnValue_1;0x0E1F PopFlow();0x0E20 CallFunc_Array_IsNotEmpty_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_IsNotEmpty(ScrewHoles);0x0E53 if (!(CallFunc_Array_IsNotEmpty_ReturnValue)) PopFlow();0x0E5D CheckAllScrewsValid(CallFunc_CheckAllScrewsValid_AllIsValid);0x0E74 if (!(CallFunc_CheckAllScrewsValid_AllIsValid)) PopFlow();0x0E7E goto Label_0396;0x0E83 Label_0E83:0x0E83 K2Node_DynamicCast_AsBP_Vehicle_Winnebago_01 = Cast<BP_Vehicle_Winnebago_01_C>(Vehicle);0x0EA7 K2Node_DynamicCast_bSuccess_1 = Cast<1>(K2Node_DynamicCast_AsBP_Vehicle_Winnebago_01);0x0EC4 if (!(K2Node_DynamicCast_bSuccess_1)) PopFlow();0x0ECE CheckAllScrewsValid(CallFunc_CheckAllScrewsValid_AllIsValid_1);0x0EE5 if (!(CallFunc_CheckAllScrewsValid_AllIsValid_1)) PopFlow();0x0EEF goto Label_03C9;0x0EF4 goto Label_05F8;0x0EF9 goto Label_0E83;0x0EFE goto Label_0661;0x0F03 Label_0F03:0x0F03 return;Final 0x147c170 0x04