void TryCutBridgeByConstraints(UPrimitiveComponent* Component)Script35 statements · 1,211 bytes of bytecode0x0000MeshIndex = 0;0x0017CallFunc_IsServer_ReturnValue = IsServer(this);0x002Cif (!(CallFunc_IsServer_ReturnValue)) goto Label_04B8;0x003AK2Node_DynamicCast_AsStatic_Mesh_Component = Cast<StaticMeshComponent>(Component);0x005EK2Node_DynamicCast_bSuccess = Cast<1>(K2Node_DynamicCast_AsStatic_Mesh_Component);0x007Bif (!(K2Node_DynamicCast_bSuccess)) goto Label_04B8;0x0089CallFunc_Array_Contains_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Contains(CacheMeshPlanks, K2Node_DynamicCast_AsStatic_Mesh_Component);0x00C5if (!(CallFunc_Array_Contains_ReturnValue)) goto Label_04B8;0x00D3CallFunc_Array_Find_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Find(CacheMeshPlanks, K2Node_DynamicCast_AsStatic_Mesh_Component);0x0117MeshIndex = CallFunc_Array_Find_ReturnValue;0x0132CallFunc_Multiply_IntInt_ReturnValue_1 = Multiply_IntInt(MeshIndex, 2);0x015C/Script/Engine.Default__KismetArrayLibrary.Array_Get(CacheContraints, CallFunc_Multiply_IntInt_ReturnValue_1, CallFunc_Array_Get_Item_1);0x0197CallFunc_IsValid_ReturnValue_1 = IsValid(CallFunc_Array_Get_Item_1);0x01B4if (!(CallFunc_IsValid_ReturnValue_1)) goto Label_02B6;0x01C2CallFunc_Multiply_IntInt_ReturnValue_1 = Multiply_IntInt(MeshIndex, 2);0x01EC/Script/Engine.Default__KismetArrayLibrary.Array_Get(CacheContraints, CallFunc_Multiply_IntInt_ReturnValue_1, CallFunc_Array_Get_Item_1);0x0227CallFunc_Array_Get_Item_1.K2_DestroyComponent(this);0x0248CallFunc_Multiply_IntInt_ReturnValue_1 = Multiply_IntInt(MeshIndex, 2);0x0272CallFunc_Array_AddUnique_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_AddUnique(CacheDestroyedConstraintIndexes, CallFunc_Multiply_IntInt_ReturnValue_1);0x02B6Label_02B6:0x02B6CallFunc_Multiply_IntInt_ReturnValue = Multiply_IntInt(MeshIndex, 2);0x02E0CallFunc_Add_IntInt_ReturnValue = Add_IntInt(CallFunc_Multiply_IntInt_ReturnValue, 1);0x030A/Script/Engine.Default__KismetArrayLibrary.Array_Get(CacheContraints, CallFunc_Add_IntInt_ReturnValue, CallFunc_Array_Get_Item);0x0345CallFunc_IsValid_ReturnValue = IsValid(CallFunc_Array_Get_Item);0x0362if (!(CallFunc_IsValid_ReturnValue)) goto Label_04B8;0x0370CallFunc_Multiply_IntInt_ReturnValue = Multiply_IntInt(MeshIndex, 2);0x039ACallFunc_Add_IntInt_ReturnValue = Add_IntInt(CallFunc_Multiply_IntInt_ReturnValue, 1);0x03C4/Script/Engine.Default__KismetArrayLibrary.Array_Get(CacheContraints, CallFunc_Add_IntInt_ReturnValue, CallFunc_Array_Get_Item);0x03FFCallFunc_Array_Get_Item.K2_DestroyComponent(this);0x0420CallFunc_Multiply_IntInt_ReturnValue = Multiply_IntInt(MeshIndex, 2);0x044ACallFunc_Add_IntInt_ReturnValue = Add_IntInt(CallFunc_Multiply_IntInt_ReturnValue, 1);0x0474CallFunc_Array_AddUnique_ReturnValue_1 = /Script/Engine.Default__KismetArrayLibrary.Array_AddUnique(CacheDestroyedConstraintIndexes, CallFunc_Add_IntInt_ReturnValue);0x04B8Label_04B8:0x04B8return; | Public | | 0x08 |
void CreatePhysicsConstraint(const FTransform& RelativeTransform, UPrimitiveComponent* Component1, UPrimitiveComponent* Component2, bool Even)Script14 statements · 613 bytes of bytecode0x0000BreakTransform(RelativeTransform, CallFunc_BreakTransform_Location, CallFunc_BreakTransform_Rotation, CallFunc_BreakTransform_Scale);0x002ECallFunc_Conv_DoubleToVector_ReturnValue = Conv_DoubleToVector(-1);0x0053CallFunc_GetRightVector_ReturnValue = GetRightVector(CallFunc_BreakTransform_Rotation);0x0078CallFunc_Conv_DoubleToVector_ReturnValue_1 = Conv_DoubleToVector(300);0x009DCallFunc_Multiply_VectorVector_ReturnValue = Multiply_VectorVector(CallFunc_GetRightVector_ReturnValue, CallFunc_Conv_DoubleToVector_ReturnValue);0x00CBCallFunc_SelectVector_ReturnValue = SelectVector(CallFunc_Multiply_VectorVector_ReturnValue, CallFunc_GetRightVector_ReturnValue, Even);0x0102CallFunc_Multiply_VectorVector_ReturnValue_1 = Multiply_VectorVector(CallFunc_SelectVector_ReturnValue, CallFunc_Conv_DoubleToVector_ReturnValue_1);0x0130CallFunc_Add_VectorVector_ReturnValue = Add_VectorVector(CallFunc_Multiply_VectorVector_ReturnValue_1, CallFunc_BreakTransform_Location);0x015ECallFunc_MakeTransform_ReturnValue = MakeTransform(CallFunc_Add_VectorVector_ReturnValue, CallFunc_BreakTransform_Rotation, FVector(1, 1, 1));0x01A5CallFunc_AddComponent_ReturnValue = AddComponent(FName(NODE_AddPhysicsConstraintComponent-0), false, CallFunc_MakeTransform_ReturnValue, this, false);0x01D2CallFunc_AddComponent_ReturnValue.SetConstrainedComponents(Component1, FName(None), Component2, FName(None));0x021ECallFunc_Array_Add_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Add(CacheContraints, CallFunc_AddComponent_ReturnValue);0x0262return; | Public | | 0x71 |
void CreateStaticMesh(const FTransform& RelativeTransform, const UStaticMeshComponent*& Mesh, FTransform& PlankTransform)Script23 statements · 918 bytes of bytecode0x0000BreakTransform(RelativeTransform, CallFunc_BreakTransform_Location, CallFunc_BreakTransform_Rotation, CallFunc_BreakTransform_Scale);0x002ECallFunc_Conv_IntToVector_ReturnValue = Conv_IntToVector(NumberOfPlanks);0x0053CallFunc_VSize_ReturnValue = VSize(Endpoint);0x0078CallFunc_GetDirectionUnitVector_ReturnValue = GetDirectionUnitVector(FVector(0, 0, 0), Endpoint);0x00B6CallFunc_Conv_DoubleToVector_ReturnValue = Conv_DoubleToVector(CallFunc_VSize_ReturnValue);0x00DBCallFunc_Divide_VectorVector_ReturnValue = Divide_VectorVector(CallFunc_Conv_DoubleToVector_ReturnValue, CallFunc_Conv_IntToVector_ReturnValue);0x0109CallFunc_Multiply_VectorVector_ReturnValue = Multiply_VectorVector(CallFunc_GetDirectionUnitVector_ReturnValue, CallFunc_Divide_VectorVector_ReturnValue);0x0137CallFunc_Add_VectorVector_ReturnValue = Add_VectorVector(CallFunc_BreakTransform_Location, CallFunc_Multiply_VectorVector_ReturnValue);0x0165CallFunc_MakeTransform_ReturnValue = MakeTransform(CallFunc_Add_VectorVector_ReturnValue, CallFunc_BreakTransform_Rotation, CallFunc_BreakTransform_Scale);0x019CCallFunc_AddComponent_ReturnValue = AddComponent(FName(NODE_AddStaticMeshComponent-0), false, CallFunc_MakeTransform_ReturnValue, this, false);0x01C9BreakTransform(RelativeTransform, CallFunc_BreakTransform_Location, CallFunc_BreakTransform_Rotation, CallFunc_BreakTransform_Scale);0x01F7CallFunc_Conv_IntToVector_ReturnValue = Conv_IntToVector(NumberOfPlanks);0x021CCallFunc_VSize_ReturnValue = VSize(Endpoint);0x0241CallFunc_GetDirectionUnitVector_ReturnValue = GetDirectionUnitVector(FVector(0, 0, 0), Endpoint);0x027FCallFunc_Conv_DoubleToVector_ReturnValue = Conv_DoubleToVector(CallFunc_VSize_ReturnValue);0x02A4CallFunc_Divide_VectorVector_ReturnValue = Divide_VectorVector(CallFunc_Conv_DoubleToVector_ReturnValue, CallFunc_Conv_IntToVector_ReturnValue);0x02D2CallFunc_Multiply_VectorVector_ReturnValue = Multiply_VectorVector(CallFunc_GetDirectionUnitVector_ReturnValue, CallFunc_Divide_VectorVector_ReturnValue);0x0300CallFunc_Add_VectorVector_ReturnValue = Add_VectorVector(CallFunc_BreakTransform_Location, CallFunc_Multiply_VectorVector_ReturnValue);0x032ECallFunc_MakeTransform_ReturnValue = MakeTransform(CallFunc_Add_VectorVector_ReturnValue, CallFunc_BreakTransform_Rotation, CallFunc_BreakTransform_Scale);0x0365Mesh = CallFunc_AddComponent_ReturnValue;0x0378PlankTransform = CallFunc_MakeTransform_ReturnValue;0x0393return; | Public | | 0xD0 |
void UserConstructionScript()Script52 statements · 1,720 bytes of bytecode0x0000PushFlow(Label_06B5);0x0005Plank.K2_SetRelativeRotation(StartRotation, false, CallFunc_K2_SetRelativeRotation_SweepHitResult, false);0x0039LastPlank = Plank;0x004CTemp_int_Variable = 0;0x0063Label_0063:0x0063CallFunc_Subtract_IntInt_ReturnValue = Subtract_IntInt(NumberOfPlanks, 1);0x008DCallFunc_LessEqual_IntInt_ReturnValue = LessEqual_IntInt(Temp_int_Variable, CallFunc_Subtract_IntInt_ReturnValue);0x00B3if (!(CallFunc_LessEqual_IntInt_ReturnValue)) goto Label_0645;0x00C1PushFlow(Label_066B);0x00C6CallFunc_Conv_IntToDouble_ReturnValue = Conv_IntToDouble(Temp_int_Variable);0x00EBCallFunc_GetRelativeTransform_ReturnValue = LastPlank.GetRelativeTransform();0x011DCallFunc_Subtract_IntInt_ReturnValue = Subtract_IntInt(NumberOfPlanks, 1);0x0147BreakTransform(CallFunc_GetRelativeTransform_ReturnValue, CallFunc_BreakTransform_Location, CallFunc_BreakTransform_Rotation, CallFunc_BreakTransform_Scale);0x0175CallFunc_Conv_IntToDouble_ReturnValue_1 = Conv_IntToDouble(CallFunc_Subtract_IntInt_ReturnValue);0x019ACallFunc_Divide_DoubleDouble_ReturnValue = Divide_DoubleDouble(CallFunc_Conv_IntToDouble_ReturnValue, CallFunc_Conv_IntToDouble_ReturnValue_1);0x01C8CallFunc_RLerp_Alpha_ImplicitCast = Cast<3>(CallFunc_Divide_DoubleDouble_ReturnValue);0x01E5CallFunc_RLerp_ReturnValue = RLerp(StartRotation, EndRotation, CallFunc_RLerp_Alpha_ImplicitCast, false);0x021DCallFunc_MakeTransform_ReturnValue_2 = MakeTransform(CallFunc_BreakTransform_Location, CallFunc_RLerp_ReturnValue, CallFunc_BreakTransform_Scale);0x0254CreateStaticMesh(CallFunc_MakeTransform_ReturnValue_2, CallFunc_CreateStaticMesh_Mesh, CallFunc_CreateStaticMesh_PlankTransform);0x027DCallFunc_Conv_IntToDouble_ReturnValue = Conv_IntToDouble(Temp_int_Variable);0x02A2CallFunc_GetRelativeTransform_ReturnValue = LastPlank.GetRelativeTransform();0x02D4CallFunc_Subtract_IntInt_ReturnValue = Subtract_IntInt(NumberOfPlanks, 1);0x02FEBreakTransform(CallFunc_GetRelativeTransform_ReturnValue, CallFunc_BreakTransform_Location, CallFunc_BreakTransform_Rotation, CallFunc_BreakTransform_Scale);0x032CCallFunc_Conv_IntToDouble_ReturnValue_1 = Conv_IntToDouble(CallFunc_Subtract_IntInt_ReturnValue);0x0351CallFunc_Divide_DoubleDouble_ReturnValue = Divide_DoubleDouble(CallFunc_Conv_IntToDouble_ReturnValue, CallFunc_Conv_IntToDouble_ReturnValue_1);0x037FCallFunc_RLerp_Alpha_ImplicitCast = Cast<3>(CallFunc_Divide_DoubleDouble_ReturnValue);0x039CCallFunc_RLerp_ReturnValue = RLerp(StartRotation, EndRotation, CallFunc_RLerp_Alpha_ImplicitCast, false);0x03D4CallFunc_MakeTransform_ReturnValue_1 = MakeTransform(CallFunc_BreakTransform_Location, CallFunc_RLerp_ReturnValue, CallFunc_BreakTransform_Scale);0x040BCreatePhysicsConstraint(CallFunc_MakeTransform_ReturnValue_1, CallFunc_CreateStaticMesh_Mesh, LastPlank, true);0x0435CallFunc_Conv_IntToDouble_ReturnValue = Conv_IntToDouble(Temp_int_Variable);0x045ACallFunc_GetRelativeTransform_ReturnValue = LastPlank.GetRelativeTransform();0x048CCallFunc_Subtract_IntInt_ReturnValue = Subtract_IntInt(NumberOfPlanks, 1);0x04B6BreakTransform(CallFunc_GetRelativeTransform_ReturnValue, CallFunc_BreakTransform_Location, CallFunc_BreakTransform_Rotation, CallFunc_BreakTransform_Scale);0x04E4CallFunc_Conv_IntToDouble_ReturnValue_1 = Conv_IntToDouble(CallFunc_Subtract_IntInt_ReturnValue);0x0509CallFunc_Divide_DoubleDouble_ReturnValue = Divide_DoubleDouble(CallFunc_Conv_IntToDouble_ReturnValue, CallFunc_Conv_IntToDouble_ReturnValue_1);0x0537CallFunc_RLerp_Alpha_ImplicitCast = Cast<3>(CallFunc_Divide_DoubleDouble_ReturnValue);0x0554CallFunc_RLerp_ReturnValue = RLerp(StartRotation, EndRotation, CallFunc_RLerp_Alpha_ImplicitCast, false);0x058CCallFunc_MakeTransform_ReturnValue = MakeTransform(CallFunc_BreakTransform_Location, CallFunc_RLerp_ReturnValue, CallFunc_BreakTransform_Scale);0x05C3CreatePhysicsConstraint(CallFunc_MakeTransform_ReturnValue, CallFunc_CreateStaticMesh_Mesh, LastPlank, false);0x05EDLastPlank = CallFunc_CreateStaticMesh_Mesh;0x0600CallFunc_Array_Add_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Add(CacheMeshPlanks, CallFunc_CreateStaticMesh_Mesh);0x0644PopFlow();0x0645Label_0645:0x0645LastPlank.SetSimulatePhysics(false);0x066APopFlow();0x066BLabel_066B:0x066BCallFunc_Add_IntInt_ReturnValue = Add_IntInt(Temp_int_Variable, 1);0x0695Temp_int_Variable = CallFunc_Add_IntInt_ReturnValue;0x06B0goto Label_0063;0x06B5Label_06B5:0x06B5return; | EventPublic | | 0x00 |
void Multicast_TryCutBridge(UPrimitiveComponent* Component)Script4 statements · 36 bytes of bytecode0x0000PersistentFrame.K2Node_CustomEvent_Component_1 = Component;0x0012ExecuteUbergraph_BP_RopeBridge(1167);0x0021return; | | | 0x08 |
void Server_TryCutBridge(UPrimitiveComponent* Component)Script4 statements · 36 bytes of bytecode0x0000PersistentFrame.K2Node_CustomEvent_Component = Component;0x0012ExecuteUbergraph_BP_RopeBridge(920);0x0021return; | | | 0x08 |
void TryCutRope(ABP_FirstPersonCharacter_C* PlayerInstigator, AActor* Actor, UPrimitiveComponent* Component, const FName& Tag)Script7 statements · 90 bytes of bytecode0x0000PersistentFrame.K2Node_Event_PlayerInstigator = PlayerInstigator;0x0012PersistentFrame.K2Node_Event_Actor = Actor;0x0024PersistentFrame.K2Node_Event_Component = Component;0x0036PersistentFrame.K2Node_Event_Tag = Tag;0x0048ExecuteUbergraph_BP_RopeBridge(963);0x0057return; | Public | | 0x20 |
void ReceiveBeginPlay()Script3 statements · 18 bytes of bytecode0x0000ExecuteUbergraph_BP_RopeBridge(1166);0x000Freturn; | EventProtected | | 0x00 |
void ExecuteUbergraph_BP_RopeBridge(int32 EntryPoint)Script62 statements · 1,175 bytes of bytecode0x0000PushFlow(Label_0494);0x0005goto [EntryPoint];0x000FLabel_000F:0x000FMarkPropertyDirtyFromRepIndex(this, 10, FName(HasBeenCut?));0x002CTemp_int_Loop_Counter_Variable_1 = 0;0x0043Temp_int_Array_Index_Variable = 0;0x005ALabel_005A:0x005ACallFunc_Array_Length_ReturnValue_1 = /Script/Engine.Default__KismetArrayLibrary.Array_Length(CacheMeshPlanks);0x0095CallFunc_Less_IntInt_ReturnValue_1 = Less_IntInt(Temp_int_Loop_Counter_Variable_1, CallFunc_Array_Length_ReturnValue_1);0x00BBif (!(CallFunc_Less_IntInt_ReturnValue_1)) goto Label_01B2;0x00C9Temp_int_Array_Index_Variable = Temp_int_Loop_Counter_Variable_1;0x00E4PushFlow(Label_02EA);0x00E9/Script/Engine.Default__KismetArrayLibrary.Array_Get(CacheMeshPlanks, Temp_int_Array_Index_Variable, CallFunc_Array_Get_Item);0x0124CallFunc_Array_Get_Item.SetLinearDamping(0.1f);0x014D/Script/Engine.Default__KismetArrayLibrary.Array_Get(CacheMeshPlanks, Temp_int_Array_Index_Variable, CallFunc_Array_Get_Item);0x0188CallFunc_Array_Get_Item.SetAngularDamping(0f);0x01B1PopFlow();0x01B2Label_01B2:0x01B2Temp_int_Loop_Counter_Variable = 0;0x01C9Temp_int_Array_Index_Variable_1 = 0;0x01E0Label_01E0:0x01E0CallFunc_Array_Length_ReturnValue = /Script/Engine.Default__KismetArrayLibrary.Array_Length(CacheContraints);0x021BCallFunc_Less_IntInt_ReturnValue = Less_IntInt(Temp_int_Loop_Counter_Variable, CallFunc_Array_Length_ReturnValue);0x0241if (!(CallFunc_Less_IntInt_ReturnValue)) goto Label_02D2;0x024FTemp_int_Array_Index_Variable_1 = Temp_int_Loop_Counter_Variable;0x026APushFlow(Label_0334);0x026F/Script/Engine.Default__KismetArrayLibrary.Array_Get(CacheContraints, Temp_int_Array_Index_Variable_1, CallFunc_Array_Get_Item_1);0x02AACallFunc_Array_Get_Item_1.SetLinearZLimit(1, 100f);0x02D1PopFlow();0x02D2Label_02D2:0x02D2TryCutBridgeByConstraints(K2Node_CustomEvent_Component_1);0x02E9PopFlow();0x02EALabel_02EA:0x02EACallFunc_Add_IntInt_ReturnValue_1 = Add_IntInt(Temp_int_Loop_Counter_Variable_1, 1);0x0314Temp_int_Loop_Counter_Variable_1 = CallFunc_Add_IntInt_ReturnValue_1;0x032Fgoto Label_005A;0x0334Label_0334:0x0334CallFunc_Add_IntInt_ReturnValue = Add_IntInt(Temp_int_Loop_Counter_Variable, 1);0x035ETemp_int_Loop_Counter_Variable = CallFunc_Add_IntInt_ReturnValue;0x0379goto Label_01E0;0x037ELabel_037E:0x037EFlushNetDormancy();0x0388HasBeenCut? = true;0x0393goto Label_000F;0x0398Multicast_TryCutBridge(K2Node_CustomEvent_Component);0x03AFPopFlow();0x03B0Label_03B0:0x03B0if (!(HasBeenCut?)) goto Label_037E;0x03BEgoto Label_02D2;0x03C3CallFunc_IsValid_ReturnValue = IsValid(K2Node_Event_PlayerInstigator);0x03E0if (!(CallFunc_IsValid_ReturnValue)) PopFlow();0x03EACallFunc_GetController_ReturnValue = K2Node_Event_PlayerInstigator.GetController();0x0414K2Node_DynamicCast_AsBP_First_Person_Player_Controller = Cast<BP_FirstPersonPlayerController_C>(CallFunc_GetController_ReturnValue);0x0438K2Node_DynamicCast_bSuccess = Cast<1>(K2Node_DynamicCast_AsBP_First_Person_Player_Controller);0x0455if (!(K2Node_DynamicCast_bSuccess)) PopFlow();0x045FK2Node_DynamicCast_AsBP_First_Person_Player_Controller.TryCutRopeBridge(this, K2Node_Event_Component);0x048DPopFlow();0x048EPopFlow();0x048Fgoto Label_03B0;0x0494Label_0494:0x0494return; | Final | | 0x04 |