PluginHeader{
	RailSimVersion = 2.00;
	PluginType = Struct;
	PluginName = "JtF01";
	PluginAuthor = "mitsubachi";
	IconTexture = "../../Train/common_mtbc/icon.png";
	Description = "";
}

StructInfo{}

DefineSwitch "Ɩ"{
	Entry = " (`21:00)";
	Entry = " (I)";
	Entry = "";
}

DefineSwitch "n"{
	Entry = "\";
	Entry = "\";
}

DefineSwitch "ꊇzu"{
	Entry = "1";
	Entry = "2-1";
	Entry = "2-2";
	Entry = "3-1";
	Entry = "3-2";
}

DefineSwitch "ʔzu"{
	Entry = "";
	Entry = "X";
	Entry = "|[Ŕ";
	Entry = "ԏŔ";
}

DefineSwitch "|[Ŕ"{
	Entry = "0";
	Entry = "90";
}

DefineSwitch " 0.x[m]"{
	Entry = "";
	Entry = "-0.5";
	Entry = "-0.4";
	Entry = "-0.3";
	Entry = "-0.2";
	Entry = "-0.1";
	Entry = "}0";
	Entry = "+0.1";
	Entry = "+0.2";
	Entry = "+0.3";
	Entry = "+0.4";
	Entry = "+0.5";
}


DefineSwitch " 0.0x[m]"{
	Entry = "";
	Entry = "-0.05";
	Entry = "-0.04";
	Entry = "-0.03";
	Entry = "-0.02";
	Entry = "-0.01";
	Entry = "}0";
	Entry = "+0.01";
	Entry = "+0.02";
	Entry = "+0.03";
	Entry = "+0.04";
	Entry = "+0.05";
}

PrimaryAssembly{
	Object3D "model"{
		ModelFileName = "model.x";
		ModelScale = 10.0;
		If "Ɩ"==0&&("_HOUR">21||"_HOUR"<=12)||"Ɩ"==2{
			ChangeAlpha = 2, 0.0;
		}Else{
			ChangeAlpha = 2, NightAlpha;
		}
		ApplySwitch "n"{
		Case 1:
			NoCastShadow = 0;
			ChangeAlpha = 0, 0;
		}
		If "ʔzu"==0 {
			StaticMove{ Displacement = (0, 0, -9.0); }
		}Else{
			If "ʔzu">=2 {
				ChangeModel = "", 1.0;
			}
		}
		ApplySwitch " 0.x[m]"{
		Case 1: StaticMove{ Displacement = (0, -0.5, 0); }
		Case 2: StaticMove{ Displacement = (0, -0.4, 0); }
		Case 3: StaticMove{ Displacement = (0, -0.3, 0); }
		Case 4: StaticMove{ Displacement = (0, -0.2, 0); }
		Case 5: StaticMove{ Displacement = (0, -0.1, 0); }
		Case 7: StaticMove{ Displacement = (0, 0.1, 0); }
		Case 8: StaticMove{ Displacement = (0, 0.2, 0); }
		Case 9: StaticMove{ Displacement = (0, 0.3, 0); }
		Case 10: StaticMove{ Displacement = (0, 0.4, 0); }
		Case 11: StaticMove{ Displacement = (0, 0.5, 0); }
		}
		ApplySwitch " 0.0x[m]"{
		Case 1: StaticMove{ Displacement = (0, -0.05, 0); }
		Case 2: StaticMove{ Displacement = (0, -0.04, 0); }
		Case 3: StaticMove{ Displacement = (0, -0.03, 0); }
		Case 4: StaticMove{ Displacement = (0, -0.02, 0); }
		Case 5: StaticMove{ Displacement = (0, -0.01, 0); }
		Case 7: StaticMove{ Displacement = (0, 0.01, 0); }
		Case 8: StaticMove{ Displacement = (0, 0.02, 0); }
		Case 9: StaticMove{ Displacement = (0, 0.03, 0); }
		Case 10: StaticMove{ Displacement = (0, 0.04, 0); }
		Case 11: StaticMove{ Displacement = (0, 0.05, 0); }
		}
		Joint3D "_LOCAL"{
			AttachCoord = (0.0, 0.0, 0.0);
		}
	}
	Object3D "lawn"{
		ModelFileName = "lawn.x";
		ModelScale = 10.0;
		If "ʔzu"==0 {
			ApplySwitch "ꊇzu"{
			Case 0,1: StaticMove{ Displacement = (-8.15, 0, 22.9); }
			Case 2:
				StaticMove{ Displacement = (-19.9, 0, 24.15); }
				StaticRotation{ RotationAxis = (0, 1, 0); RotationAngle = 90.0; }
			Case 3: StaticMove{ Displacement = (-8.15, 0, 40.9); }
			Case 4: StaticMove{ Displacement = (-21.15, 0, 40.9); }
			}
		}Else{
			ChangeModel = "", 1.0;
		}
		Joint3D "model"{
			AttachCoord = (0.0, 0.0, 0.0);
		}
	}
	Object3D "sign1"{
		ModelFileName = "sign1.x";
		ModelScale = 10.0;
		If "Ɩ"==0&&("_HOUR">21||"_HOUR"<=12)||"Ɩ"==2{
			ChangeAlpha = 1, 0.0;
		}Else{
			ChangeAlpha = 1, NightAlpha;
		}
		If "ʔzu"==0 {
			ApplySwitch "ꊇzu"{
			Case 0,1,3,4: StaticMove{ Displacement = (0.0, 0.15, 1.35); }
			Case 2:
				StaticMove{ Displacement = (0.0, 0.15, -1.35); }
			}
		}Else{
			If "ʔzu"!=2 {
				ChangeModel = "", 1.0;
			}
		}
		ApplySwitch "|[Ŕ"{
		Case 1: StaticRotation{ RotationAxis = (0, 1, 0); RotationAngle = 90.0; }
			If "ʔzu"==0&&"ꊇzu"==2{
				StaticRotation{ RotationAxis = (0, 1, 0); RotationAngle = 180.0; }
			}
		}
		Joint3D "lawn"{
			AttachCoord = (0.0, 0.0, 0.0);
		}
	}
	Object3D "sign2"{
		ModelFileName = "sign2.x";
		ModelScale = 10.0;
		If "Ɩ"==0&&("_HOUR">21||"_HOUR"<=12)||"Ɩ"==2{
			ChangeAlpha = 1, 0.0;
		}Else{
			ChangeAlpha = 1, NightAlpha;
		}
		If "ʔzu"==0 {
			ApplySwitch "ꊇzu"{
			Case 0,1,3,4: StaticMove{ Displacement = (-0.5, 0.15, -1.85); }
			Case 2: StaticMove{ Displacement = (-0.5, 0.15, 1.85); }
			}
		}Else{
			If "ʔzu"!=3 {
				ChangeModel = "", 1.0;
			}
		}
		Joint3D "lawn"{
			AttachCoord = (0.0, 0.0, 0.0);
		}
	}
	Object3D "lot"{
		ModelFileName = "lot1.x";
		ModelScale = 10.0;
		AlphaZeroTest = 1;
		NoCastShadow = 1;
		ApplySwitch "n"{
		Case 1:
			NoCastShadow = 0;
			ChangeAlpha = 0, 0;
		}
		If "ʔzu"!=0 {
			ChangeModel = "", 1.0;
		}Else{
			ApplySwitch "ꊇzu"{
			Case 1: ChangeModel = "lot2a.x", 10.0;
			Case 2: ChangeModel = "lot2b.x", 10.0;
			Case 3: ChangeModel = "lot3a.x", 10.0;
			Case 4: ChangeModel = "lot3b.x", 10.0;
			}
		}
		Joint3D "model"{
			AttachCoord = (0.0, 0.0, 0.0);
		}
	}
}