diff --git a/Assets/Scenes/Workspace.unity b/Assets/Scenes/Workspace.unity index 928abcf..c4888bc 100755 --- a/Assets/Scenes/Workspace.unity +++ b/Assets/Scenes/Workspace.unity @@ -540,6 +540,10 @@ MonoBehaviour: - {fileID: 21300000, guid: 3aa2b0925144bb54193b25bf37dddf91, type: 3} - {fileID: 21300000, guid: 9ade58a4f17ab5a49bebda61d08ee88e, type: 3} - {fileID: 21300000, guid: b5f750949f494f64b8baf51ddce0cddc, type: 3} + - {fileID: 21300000, guid: fb9d75202bc34614386238db3fffc40f, type: 3} + - {fileID: 21300000, guid: fef17d5a676873948ba369ca15b6bd9b, type: 3} + - {fileID: 21300000, guid: d69b0f1133d01724bbdf18812cbed7bc, type: 3} + - {fileID: 21300000, guid: c0328b3c1f22daf458e6a053ee2a7fc7, type: 3} --- !u!4 &535412053 Transform: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/Utils.cs b/Assets/Scripts/Utils.cs index 88a2f54..6ebd87b 100755 --- a/Assets/Scripts/Utils.cs +++ b/Assets/Scripts/Utils.cs @@ -61,13 +61,13 @@ namespace CompuLogic public static void SetSortingLayerRecursive(this UnityEngine.Component obj, string sortingLayer) { - if(obj.TryGetComponent(out var renderer)) + if(obj.TryGetComponent(out var renderer)) { renderer.SetSortingLayerRecursive(sortingLayer); } else { - foreach (var subrenderer in obj.GetComponentsInChildren()) + foreach (var subrenderer in obj.GetComponentsInChildren()) { subrenderer.SetSortingLayerRecursive(sortingLayer); } @@ -75,9 +75,10 @@ namespace CompuLogic } - public static void SetSortingLayerRecursive(this SpriteRenderer renderer, string sortingLayer) + public static void SetSortingLayerRecursive(this Renderer renderer, string sortingLayer) { - foreach (var subrenderer in renderer.GetComponentsInChildren()) + renderer.sortingLayerName = sortingLayer; + foreach (var subrenderer in renderer.GetComponentsInChildren()) { if(subrenderer != renderer) { diff --git a/Assets/Scripts/Workspace/Anchor.cs b/Assets/Scripts/Workspace/Anchor.cs index 58a8e29..739a3d2 100755 --- a/Assets/Scripts/Workspace/Anchor.cs +++ b/Assets/Scripts/Workspace/Anchor.cs @@ -48,7 +48,7 @@ namespace CompuLogic.Workspace { Text.text = Name; var rect = Text.GetComponent(); - var rotate = (Mathf.Abs(Orientation.y) > Mathf.Epsilon && Name.Length > 1); + var rotate = Mathf.Abs(Orientation.y) > Mathf.Epsilon && Name.Length > 1 && !Name.Contains("\x305"); rect.localRotation = rotate ? Quaternion.AngleAxis(90f, Vector3.forward) : Quaternion.identity; rect.localPosition = new Vector3(Orientation.x, Orientation.y, 0f) * -TextSpace; if (!rotate && Mathf.Abs(Orientation.y) > Mathf.Epsilon) diff --git a/Assets/Scripts/Workspace/GatePrefabFactory.cs b/Assets/Scripts/Workspace/GatePrefabFactory.cs index 0c87d31..cb7eb70 100755 --- a/Assets/Scripts/Workspace/GatePrefabFactory.cs +++ b/Assets/Scripts/Workspace/GatePrefabFactory.cs @@ -68,7 +68,7 @@ namespace CompuLogic.Workspace gate.UIName = string.IsNullOrEmpty(item.Name) ? gate.GateType.ToString() : item.Name; - var showAnchorNames = false; + var showAnchorNames = item.ShowNames; if (string.IsNullOrEmpty(item.Skin)) { @@ -91,7 +91,7 @@ namespace CompuLogic.Workspace var anchor = Instantiate(inputAnchor.Big ? _bigAnchorPrefab : _anchorPrefab); anchor.transform.parent = prefab.transform; inputAnchor.ConfigAnchor(anchor); - anchor.ShowName = showAnchorNames; + anchor.ShowName = showAnchorNames || inputAnchor.ShowName; anchor.IsInput = true; } } @@ -103,7 +103,7 @@ namespace CompuLogic.Workspace var anchor = Instantiate(outputAnchor.Big ? _bigAnchorPrefab : _anchorPrefab); anchor.transform.parent = prefab.transform; outputAnchor.ConfigAnchor(anchor); - anchor.ShowName = showAnchorNames; + anchor.ShowName = showAnchorNames || outputAnchor.ShowName; } } @@ -143,6 +143,7 @@ namespace CompuLogic.Workspace public int Width { get; set; } public int Height { get; set; } public string Class { get; set; } + public bool ShowNames { get; set; } public List Input { get; set; } public List Output { get; set; } public List InputAnchors => Input.Select(i => i.Split(new char[0])).Select(GateBookItemAnchor.Get).ToList(); @@ -157,6 +158,7 @@ namespace CompuLogic.Workspace public float Y { get; set; } public string Orientation { get; set; } public bool Big { get; set; } + public bool ShowName { get; set; } public Vector2 OrientationV => new Vector2( Orientation == "W" ? -1 : (Orientation == "E" ? 1 : 0), Orientation == "N" ? 1 : (Orientation == "S" ? -1 : 0) @@ -170,7 +172,8 @@ namespace CompuLogic.Workspace X = float.Parse(i[1], CultureInfo.InvariantCulture.NumberFormat), Y = float.Parse(i[2], CultureInfo.InvariantCulture.NumberFormat), Orientation = i[3], - Big = i.Length > 4 && i[4].Equals("big"), + Big = i.Contains("big"), + ShowName = i.Contains("named") }; } diff --git a/Assets/Scripts/Workspace/Gates/GateDefinitionList.cs b/Assets/Scripts/Workspace/Gates/GateDefinitionList.cs index d258add..dae83a8 100755 --- a/Assets/Scripts/Workspace/Gates/GateDefinitionList.cs +++ b/Assets/Scripts/Workspace/Gates/GateDefinitionList.cs @@ -331,17 +331,17 @@ namespace CompuLogic.Workspace.Gates internal class MuxGate : StatelessGateDefinition { - public override string[] Inputs { get; } = new string[] { "E", "S", "D0", "D1" }; + public override string[] Inputs { get; } = new string[] { "E̅", "S", "D0", "D1" }; public override string[] Outputs { get; } = new string[] { "Y" }; internal override Func Function => (input) => { - var e = input[0]; + var ne = input[0]; var s = input[1]; var d0 = input[2]; var d1 = input[3]; - var y = e && (!s && d0 || s && d1); + var y = !ne && (!s && d0 || s && d1); return new OutputState(y); }; @@ -349,17 +349,17 @@ namespace CompuLogic.Workspace.Gates internal class DemuxGate : StatelessGateDefinition { - public override string[] Inputs { get; } = new string[] { "E", "S", "D" }; + public override string[] Inputs { get; } = new string[] { "E̅", "S", "D" }; public override string[] Outputs { get; } = new string[] { "Y0", "Y1" }; internal override Func Function => (input) => { - var e = input[0]; + var ne = input[0]; var s = input[1]; var d = input[2]; - var y0 = e && !s && d; - var y1 = e && s && d; + var y0 = !ne && !s && d; + var y1 = !ne && s && d; return new OutputState(y0, y1); }; @@ -367,12 +367,12 @@ namespace CompuLogic.Workspace.Gates internal class Mux2bGate : StatelessGateDefinition { - public override string[] Inputs { get; } = new string[] { "E", "S0", "S1", "D0", "D1", "D2", "D3" }; + public override string[] Inputs { get; } = new string[] { "E̅", "S0", "S1", "D0", "D1", "D2", "D3" }; public override string[] Outputs { get; } = new string[] { "Y" }; internal override Func Function => (input) => { - var e = input[0]; + var ne = input[0]; var s0 = input[1]; var s1 = input[2]; var d0 = input[3]; @@ -380,7 +380,7 @@ namespace CompuLogic.Workspace.Gates var d2 = input[5]; var d3 = input[6]; - var y = e && ( + var y = ne && ( !s0 && !s1 && d0 || s0 && !s1 && d1 || !s0 && s1 && d2 || @@ -393,20 +393,20 @@ namespace CompuLogic.Workspace.Gates internal class Demux2bGate : StatelessGateDefinition { - public override string[] Inputs { get; } = new string[] { "E", "S0", "S1", "D" }; + public override string[] Inputs { get; } = new string[] { "E̅", "S0", "S1", "D" }; public override string[] Outputs { get; } = new string[] { "Y0", "Y1", "Y2", "Y3" }; internal override Func Function => (input) => { - var e = input[0]; + var ne = input[0]; var s0 = input[1]; var s1 = input[2]; var d = input[3]; - var y0 = e && !s0 && !s1 && d; - var y1 = e && s0 && !s1 && d; - var y2 = e && !s0 && s1 && d; - var y3 = e && s0 && s1 && d; + var y0 = !ne && !s0 && !s1 && d; + var y1 = !ne && s0 && !s1 && d; + var y2 = !ne && !s0 && s1 && d; + var y3 = !ne && s0 && s1 && d; return new OutputState(y0, y1, y2, y3); }; diff --git a/Assets/Texts/gates.yaml b/Assets/Texts/gates.yaml index ad6f8fd..7e2e938 100755 --- a/Assets/Texts/gates.yaml +++ b/Assets/Texts/gates.yaml @@ -244,54 +244,58 @@ list: - Cᴏ 4.5 5.5 E 600: name: Mux. - width: 7 - height: 7 + skin: mux + width: 3 + height: 5 input: - D0 0.5 1.5 W - D1 0.5 3.5 W - - E 2.5 6.5 S - - S 4.5 6.5 S + - E̅ 1.5 1.0 N + - S 1.5 4.0 S output: - - Y 6.5 2.5 E + - Y 2.5 2.5 E 610: name: Demux. - width: 7 - height: 7 + skin: demux + width: 3 + height: 5 input: - D 0.5 2.5 W - - E 2.5 6.5 S - - S 4.5 6.5 S + - E̅ 1.5 1.0 N + - S 1.5 4.0 S output: - - Y0 6.5 1.5 E - - Y1 6.5 3.5 E + - Y0 2.5 1.5 E + - Y1 2.5 3.5 E 620: name: 2bits Mux. - width: 7 - height: 7 + skin: mux2 + width: 4 + height: 6 input: - D0 0.5 1.5 W - D1 0.5 2.5 W - D2 0.5 3.5 W - D3 0.5 4.5 W - - E 2.5 6.5 S - - S0 3.5 6.5 S - - S1 4.5 6.5 S + - E̅ 1.5 1.0 N + - S0 1.5 5.0 S + - S1 2.5 4.5 S output: - - Y 6.5 3.5 E + - Y 3.5 3.0 E 630: name: 2bits Demux. - width: 7 - height: 7 + skin: demux2 + width: 4 + height: 6 input: - - D 0.5 3.5 W - - E 2.5 6.5 S - - S0 3.5 6.5 S - - S1 4.5 6.5 S + - D 0.5 3.0 W + - E̅ 2.5 1.0 S + - S0 1.5 4.5 S + - S1 2.5 5.0 S output: - - Y0 6.5 1.5 E - - Y1 6.5 2.5 E - - Y2 6.5 3.5 E - - Y3 6.5 4.5 E + - Y0 3.5 1.5 E + - Y1 3.5 2.5 E + - Y2 3.5 3.5 E + - Y3 3.5 4.5 E 640: name: 2b./4b. Enc. width: 5 diff --git a/Assets/Textures/Gates/demux.png b/Assets/Textures/Gates/demux.png new file mode 100644 index 0000000..9bd2368 Binary files /dev/null and b/Assets/Textures/Gates/demux.png differ diff --git a/Assets/Textures/Gates/demux.png.meta b/Assets/Textures/Gates/demux.png.meta new file mode 100755 index 0000000..ef76148 --- /dev/null +++ b/Assets/Textures/Gates/demux.png.meta @@ -0,0 +1,130 @@ +fileFormatVersion: 2 +guid: fb9d75202bc34614386238db3fffc40f +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 0 + alignment: 1 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Textures/Gates/demux2.png b/Assets/Textures/Gates/demux2.png new file mode 100644 index 0000000..6fd5dfc Binary files /dev/null and b/Assets/Textures/Gates/demux2.png differ diff --git a/Assets/Textures/Gates/demux2.png.meta b/Assets/Textures/Gates/demux2.png.meta new file mode 100755 index 0000000..8ac6b34 --- /dev/null +++ b/Assets/Textures/Gates/demux2.png.meta @@ -0,0 +1,130 @@ +fileFormatVersion: 2 +guid: fef17d5a676873948ba369ca15b6bd9b +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 0 + alignment: 1 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Textures/Gates/mux.png b/Assets/Textures/Gates/mux.png new file mode 100644 index 0000000..b157e1c Binary files /dev/null and b/Assets/Textures/Gates/mux.png differ diff --git a/Assets/Textures/Gates/mux.png.meta b/Assets/Textures/Gates/mux.png.meta new file mode 100755 index 0000000..69db2d9 --- /dev/null +++ b/Assets/Textures/Gates/mux.png.meta @@ -0,0 +1,130 @@ +fileFormatVersion: 2 +guid: d69b0f1133d01724bbdf18812cbed7bc +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 0 + alignment: 1 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Textures/Gates/mux2.png b/Assets/Textures/Gates/mux2.png new file mode 100644 index 0000000..58cc882 Binary files /dev/null and b/Assets/Textures/Gates/mux2.png differ diff --git a/Assets/Textures/Gates/mux2.png.meta b/Assets/Textures/Gates/mux2.png.meta new file mode 100755 index 0000000..c1bf9b2 --- /dev/null +++ b/Assets/Textures/Gates/mux2.png.meta @@ -0,0 +1,130 @@ +fileFormatVersion: 2 +guid: c0328b3c1f22daf458e6a053ee2a7fc7 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 0 + alignment: 1 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index f38a4b2..1ef79d6 100755 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -82,7 +82,7 @@ PlayerSettings: bakeCollisionMeshes: 0 forceSingleInstance: 0 useFlipModelSwapchain: 1 - resizableWindow: 0 + resizableWindow: 1 useMacAppStoreValidation: 0 macAppStoreCategory: public.app-category.games gpuSkinning: 0 diff --git a/SVG/Gates/demux.svg b/SVG/Gates/demux.svg new file mode 100755 index 0000000..47c4cba --- /dev/null +++ b/SVG/Gates/demux.svg @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SVG/Gates/demux2.svg b/SVG/Gates/demux2.svg new file mode 100755 index 0000000..4552a19 --- /dev/null +++ b/SVG/Gates/demux2.svg @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SVG/Gates/mux.svg b/SVG/Gates/mux.svg new file mode 100755 index 0000000..7b2dc41 --- /dev/null +++ b/SVG/Gates/mux.svg @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SVG/Gates/mux2.svg b/SVG/Gates/mux2.svg new file mode 100755 index 0000000..73d45ed --- /dev/null +++ b/SVG/Gates/mux2.svg @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/TODO.txt b/TODO.txt index 5662a03..4ac6435 100755 --- a/TODO.txt +++ b/TODO.txt @@ -1,8 +1,13 @@ TODO --(1) mux/demux svg -(1) show current gate name when moving -(1) change fonts +-(1) light gray name on default gates -(3) cable overlap (same/diff circuit) -(5) cable management --(5) buses +-(?) anchor names tooltip +-(?) buses ? +-(?) Main Menu +-(?) Pause Menu +-(?) Tools +-(?) Levels