{
	"kind": "Blueprint",
	"name": "BP_Door",
	"path": "/Game/Demo/BP_Door.BP_Door",
	"parentClass": "/Script/Engine.Actor",
	"blueprintType": "Normal",
	"interfaces": [],
	"description": "A door that opens for the first actor that walks into it.",
	"components": [
		{
			"name": "DefaultSceneRoot",
			"class": "/Script/Engine.SceneComponent",
			"parent": "",
			"properties":
			{
			}
		},
		{
			"name": "Frame",
			"class": "/Script/Engine.StaticMeshComponent",
			"parent": "DefaultSceneRoot",
			"properties":
			{
				"StaticMesh": "/Engine/BasicShapes/Cube",
				"RelativeScale3D":
				{
					"X": 0.20000000000000001,
					"Y": 1,
					"Z": 2
				}
			}
		},
		{
			"name": "Trigger",
			"class": "/Script/Engine.BoxComponent",
			"parent": "DefaultSceneRoot",
			"properties":
			{
				"BoxExtent":
				{
					"X": 120,
					"Y": 120,
					"Z": 100
				}
			}
		}
	],
	"variables": [
		{
			"name": "bIsOpen",
			"type": "Boolean",
			"default": false,
			"category": "Default",
			"flags": []
		},
		{
			"name": "OpenAngle",
			"type": "Float (double-precision)",
			"default": 90,
			"category": "Door",
			"flags": [
				"Instance Editable"
			],
			"tooltip": "How far the door swings, in degrees."
		},
		{
			"name": "RequiredKey",
			"type": "Name",
			"default": "Item.Key",
			"category": "Default",
			"flags": []
		}
	],
	"dispatchers": [],
	"functions": [
		{
			"name": "TryOpen",
			"text": "TryOpen(Instigator)\n  Branch(Condition=bIsOpen)\n    True:\n      PrintString(InString=\"Already open\")\n    False:\n      Set bIsOpen = true  // Remember it so the door opens once\n      Return(Opened=true)",
			"nodes": [
				{
					"id": "N0",
					"class": "K2Node_FunctionEntry",
					"title": "TryOpen",
					"pins": [
						{
							"name": "then",
							"dir": "out",
							"type": "Exec",
							"links": [
								"N2.execute"
							]
						},
						{
							"name": "Instigator",
							"dir": "out",
							"type": "Actor Object Reference"
						}
					]
				},
				{
					"id": "N1",
					"class": "K2Node_FunctionResult",
					"title": "Return Node",
					"pins": [
						{
							"name": "execute",
							"dir": "in",
							"type": "Exec",
							"links": [
								"N5.then"
							]
						},
						{
							"name": "Opened",
							"dir": "in",
							"type": "Boolean",
							"default": "true"
						}
					]
				},
				{
					"id": "N2",
					"class": "K2Node_IfThenElse",
					"title": "Branch",
					"pins": [
						{
							"name": "execute",
							"dir": "in",
							"type": "Exec",
							"links": [
								"N0.then"
							]
						},
						{
							"name": "Condition",
							"dir": "in",
							"type": "Boolean",
							"links": [
								"N3.Is Open"
							]
						},
						{
							"name": "True",
							"dir": "out",
							"type": "Exec",
							"links": [
								"N4.execute"
							]
						},
						{
							"name": "False",
							"dir": "out",
							"type": "Exec",
							"links": [
								"N5.execute"
							]
						}
					]
				},
				{
					"id": "N3",
					"class": "K2Node_VariableGet",
					"title": "Get bIsOpen",
					"pins": [
						{
							"name": "Is Open",
							"dir": "out",
							"type": "Boolean",
							"links": [
								"N2.Condition"
							]
						}
					]
				},
				{
					"id": "N4",
					"class": "K2Node_CallFunction",
					"title": "PrintString",
					"pins": [
						{
							"name": "execute",
							"dir": "in",
							"type": "Exec",
							"links": [
								"N2.True"
							]
						},
						{
							"name": "then",
							"dir": "out",
							"type": "Exec"
						},
						{
							"name": "In String",
							"dir": "in",
							"type": "String",
							"default": "Already open"
						},
						{
							"name": "Print to Screen",
							"dir": "in",
							"type": "Boolean",
							"default": "true"
						},
						{
							"name": "Print to Log",
							"dir": "in",
							"type": "Boolean",
							"default": "true"
						},
						{
							"name": "Text Color",
							"dir": "in",
							"type": "Linear Color Structure",
							"default": "(R=0.000000,G=0.660000,B=1.000000,A=1.000000)"
						},
						{
							"name": "Duration",
							"dir": "in",
							"type": "Float (single-precision)",
							"default": "2.000000"
						},
						{
							"name": "Key",
							"dir": "in",
							"type": "Name",
							"default": "None"
						}
					]
				},
				{
					"id": "N5",
					"class": "K2Node_VariableSet",
					"title": "Set bIsOpen",
					"comment": "Remember it so the door opens once",
					"pins": [
						{
							"name": "execute",
							"dir": "in",
							"type": "Exec",
							"links": [
								"N2.False"
							]
						},
						{
							"name": "then",
							"dir": "out",
							"type": "Exec",
							"links": [
								"N1.execute"
							]
						},
						{
							"name": "Is Open",
							"dir": "in",
							"type": "Boolean",
							"default": "true"
						},
						{
							"name": "Output_Get",
							"dir": "out",
							"type": "Boolean"
						}
					]
				}
			],
			"inputs": [
				{
					"name": "Instigator",
					"type": "Actor Object Reference"
				}
			],
			"outputs": [
				{
					"name": "Opened",
					"type": "Boolean"
				}
			],
			"flags": [
				"Public"
			],
			"locals": []
		}
	],
	"eventGraphs": [
		{
			"name": "EventGraph",
			"text": "Event BeginPlay\n  Branch(Condition=(OpenAngle > 0.0))\n    True:\n      PrintString(InString=\"Door ready\")\n      [N8] Set bIsOpen = false\n    False:\n      PrintString(InString=\"OpenAngle must be positive\")\n      -> goto [N8] Set bIsOpen\n\nEvent ActorBeginOverlap(OtherActor)\n  TryOpen(Instigator=OtherActor)\n  Branch(Condition=TryOpen.Opened)\n    True:\n      PrintString(InString=\"Door opened\")\n\nNot connected to any entry point: Reroute Node",
			"nodes": [
				{
					"id": "N0",
					"class": "K2Node_Event",
					"title": "Event BeginPlay",
					"pins": [
						{
							"name": "Output Delegate",
							"dir": "out",
							"type": "Delegate"
						},
						{
							"name": "then",
							"dir": "out",
							"type": "Exec",
							"links": [
								"N2.execute"
							]
						}
					]
				},
				{
					"id": "N1",
					"class": "K2Node_Event",
					"title": "Event ActorBeginOverlap",
					"pins": [
						{
							"name": "Output Delegate",
							"dir": "out",
							"type": "Delegate"
						},
						{
							"name": "then",
							"dir": "out",
							"type": "Exec",
							"links": [
								"N9.execute"
							]
						},
						{
							"name": "Other Actor",
							"dir": "out",
							"type": "Actor Object Reference",
							"links": [
								"N9.Instigator"
							]
						}
					]
				},
				{
					"id": "N2",
					"class": "K2Node_IfThenElse",
					"title": "Branch",
					"pins": [
						{
							"name": "execute",
							"dir": "in",
							"type": "Exec",
							"links": [
								"N0.then"
							]
						},
						{
							"name": "Condition",
							"dir": "in",
							"type": "Boolean",
							"links": [
								"N3.Return Value"
							]
						},
						{
							"name": "True",
							"dir": "out",
							"type": "Exec",
							"links": [
								"N6.execute"
							]
						},
						{
							"name": "False",
							"dir": "out",
							"type": "Exec",
							"links": [
								"N5.execute"
							]
						}
					]
				},
				{
					"id": "N3",
					"class": "K2Node_CallFunction",
					"title": "float > float",
					"pins": [
						{
							"name": "A",
							"dir": "in",
							"type": "Float (double-precision)",
							"links": [
								"N4.Open Angle"
							]
						},
						{
							"name": "B",
							"dir": "in",
							"type": "Float (double-precision)",
							"default": "0.0"
						},
						{
							"name": "Return Value",
							"dir": "out",
							"type": "Boolean",
							"links": [
								"N2.Condition"
							]
						}
					]
				},
				{
					"id": "N4",
					"class": "K2Node_VariableGet",
					"title": "Get OpenAngle",
					"pins": [
						{
							"name": "Open Angle",
							"dir": "out",
							"type": "Float (double-precision)",
							"links": [
								"N3.A"
							]
						}
					]
				},
				{
					"id": "N5",
					"class": "K2Node_CallFunction",
					"title": "PrintString",
					"pins": [
						{
							"name": "execute",
							"dir": "in",
							"type": "Exec",
							"links": [
								"N2.False"
							]
						},
						{
							"name": "then",
							"dir": "out",
							"type": "Exec",
							"links": [
								"N8.execute"
							]
						},
						{
							"name": "In String",
							"dir": "in",
							"type": "String",
							"default": "OpenAngle must be positive"
						},
						{
							"name": "Print to Screen",
							"dir": "in",
							"type": "Boolean",
							"default": "true"
						},
						{
							"name": "Print to Log",
							"dir": "in",
							"type": "Boolean",
							"default": "true"
						},
						{
							"name": "Text Color",
							"dir": "in",
							"type": "Linear Color Structure",
							"default": "(R=0.000000,G=0.660000,B=1.000000,A=1.000000)"
						},
						{
							"name": "Duration",
							"dir": "in",
							"type": "Float (single-precision)",
							"default": "2.000000"
						},
						{
							"name": "Key",
							"dir": "in",
							"type": "Name",
							"default": "None"
						}
					]
				},
				{
					"id": "N6",
					"class": "K2Node_CallFunction",
					"title": "PrintString",
					"pins": [
						{
							"name": "execute",
							"dir": "in",
							"type": "Exec",
							"links": [
								"N2.True"
							]
						},
						{
							"name": "then",
							"dir": "out",
							"type": "Exec",
							"links": [
								"N7.InputPin"
							]
						},
						{
							"name": "In String",
							"dir": "in",
							"type": "String",
							"default": "Door ready"
						},
						{
							"name": "Print to Screen",
							"dir": "in",
							"type": "Boolean",
							"default": "true"
						},
						{
							"name": "Print to Log",
							"dir": "in",
							"type": "Boolean",
							"default": "true"
						},
						{
							"name": "Text Color",
							"dir": "in",
							"type": "Linear Color Structure",
							"default": "(R=0.000000,G=0.660000,B=1.000000,A=1.000000)"
						},
						{
							"name": "Duration",
							"dir": "in",
							"type": "Float (single-precision)",
							"default": "2.000000"
						},
						{
							"name": "Key",
							"dir": "in",
							"type": "Name",
							"default": "None"
						}
					]
				},
				{
					"id": "N7",
					"class": "K2Node_Knot",
					"title": "Reroute Node",
					"pins": [
						{
							"name": "InputPin",
							"dir": "in",
							"type": "Exec",
							"links": [
								"N6.then"
							]
						},
						{
							"name": "OutputPin",
							"dir": "out",
							"type": "Exec",
							"links": [
								"N8.execute"
							]
						}
					]
				},
				{
					"id": "N8",
					"class": "K2Node_VariableSet",
					"title": "Set bIsOpen",
					"pins": [
						{
							"name": "execute",
							"dir": "in",
							"type": "Exec",
							"links": [
								"N7.OutputPin",
								"N5.then"
							]
						},
						{
							"name": "then",
							"dir": "out",
							"type": "Exec"
						},
						{
							"name": "Is Open",
							"dir": "in",
							"type": "Boolean",
							"default": "false"
						},
						{
							"name": "Output_Get",
							"dir": "out",
							"type": "Boolean"
						}
					]
				},
				{
					"id": "N9",
					"class": "K2Node_CallFunction",
					"title": "TryOpen",
					"pins": [
						{
							"name": "execute",
							"dir": "in",
							"type": "Exec",
							"links": [
								"N1.then"
							]
						},
						{
							"name": "then",
							"dir": "out",
							"type": "Exec",
							"links": [
								"N10.execute"
							]
						},
						{
							"name": "Target",
							"dir": "in",
							"type": "Self Object Reference",
							"default": ""
						},
						{
							"name": "Instigator",
							"dir": "in",
							"type": "Actor Object Reference",
							"links": [
								"N1.Other Actor"
							]
						},
						{
							"name": "Opened",
							"dir": "out",
							"type": "Boolean",
							"links": [
								"N10.Condition"
							]
						}
					]
				},
				{
					"id": "N10",
					"class": "K2Node_IfThenElse",
					"title": "Branch",
					"pins": [
						{
							"name": "execute",
							"dir": "in",
							"type": "Exec",
							"links": [
								"N9.then"
							]
						},
						{
							"name": "Condition",
							"dir": "in",
							"type": "Boolean",
							"links": [
								"N9.Opened"
							]
						},
						{
							"name": "True",
							"dir": "out",
							"type": "Exec",
							"links": [
								"N11.execute"
							]
						},
						{
							"name": "False",
							"dir": "out",
							"type": "Exec"
						}
					]
				},
				{
					"id": "N11",
					"class": "K2Node_CallFunction",
					"title": "PrintString",
					"pins": [
						{
							"name": "execute",
							"dir": "in",
							"type": "Exec",
							"links": [
								"N10.True"
							]
						},
						{
							"name": "then",
							"dir": "out",
							"type": "Exec"
						},
						{
							"name": "In String",
							"dir": "in",
							"type": "String",
							"default": "Door opened"
						},
						{
							"name": "Print to Screen",
							"dir": "in",
							"type": "Boolean",
							"default": "true"
						},
						{
							"name": "Print to Log",
							"dir": "in",
							"type": "Boolean",
							"default": "true"
						},
						{
							"name": "Text Color",
							"dir": "in",
							"type": "Linear Color Structure",
							"default": "(R=0.000000,G=0.660000,B=1.000000,A=1.000000)"
						},
						{
							"name": "Duration",
							"dir": "in",
							"type": "Float (single-precision)",
							"default": "2.000000"
						},
						{
							"name": "Key",
							"dir": "in",
							"type": "Name",
							"default": "None"
						}
					]
				}
			]
		}
	],
	"interfaceGraphs": [],
	"macros": [],
	"collapsedGraphs": [],
	"classDefaults":
	{
	},
	"hardReferences": [
		"/Engine/BasicShapes/Cube"
	],
	"softReferences": []
}