diff --git a/LWGlass/LWGlass.csproj b/LWGlass/LWGlass.csproj
new file mode 100644
index 0000000..87590e3
--- /dev/null
+++ b/LWGlass/LWGlass.csproj
@@ -0,0 +1,707 @@
+
+
+
+
+ Debug
+ AnyCPU
+ {DBF59BA1-8E2D-479E-ADCD-DD4D7E81C693}
+ Library
+ Properties
+ LWGlass
+ LWGlass
+ v3.5
+ 512
+
+
+ AnyCPU
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+
+
+ AnyCPU
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+
+
+
+
+
+
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\AgileObjects.NetStandardPolyfills.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\AgileObjects.ReadableExpressions.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\ClassImpl.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\DOTween.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\DOTween.Modules.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\FancyInput.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\FancyInput.Rebinding.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\FancyInput.Rendering.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\FancyPantsConsole.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\FancyPantsConsole.Interfaces.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\GameDataAccess.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Google.Protobuf.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Grpc.Core.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Grpc.Core.Api.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Ionic.Zip.Unity.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\JECS.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\JimmysUnityUtilities.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\KinematicCharacterController.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LICC.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Lidgren.Network.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Linework.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicAPI.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicAPI.Client.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicLocalization.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicLog.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicSettings.Core.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicSettings.Internal.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicSynth.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicUI.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Audio.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Building.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.BuildingManagement.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.CameraCode.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Chat.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.CheatCodes.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.ClientCode.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.ClientWorldStuff.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Environments.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.GameStates.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Graphics.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Input.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Interfaces.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Messages.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Modding.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Modding.Assets.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Modding.Compilation.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Models.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Networking.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Online.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Outlines.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.PartialWorlds.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Physics.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Players.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.References.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Rendering.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.SharedCode.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.UI.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.UnityHacksAndExtensions.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Utilities.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\LogicWorld.Worlds.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\MessagePack.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\MessagePack.Annotations.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Microsoft.CodeAnalysis.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Microsoft.CodeAnalysis.CSharp.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Minis.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Mono.Security.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\mscorlib.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\NaughtyAttributes.Core.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\NaughtyAttributes.Test.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\netstandard.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Newtonsoft.Json.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\OBJImport.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\RtMidi.Runtime.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\sc.stylizedwater2.runtime.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Shapes2D.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Simple360Render.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Buffers.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Collections.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Collections.Immutable.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.ComponentModel.Composition.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Configuration.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Core.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Data.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Data.DataSetExtensions.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Diagnostics.Debug.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Drawing.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Dynamic.Runtime.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.EnterpriseServices.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Globalization.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.IO.Compression.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.IO.Compression.FileSystem.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Linq.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Linq.Expressions.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Memory.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Net.Http.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Numerics.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Reflection.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Reflection.Extensions.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Reflection.Metadata.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Reflection.Primitives.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Resources.ResourceManager.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Runtime.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Runtime.CompilerServices.Unsafe.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Runtime.Extensions.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Runtime.Serialization.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Security.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.ServiceModel.Internals.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Text.Encoding.CodePages.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Text.RegularExpressions.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Threading.Tasks.Extensions.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Transactions.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Xml.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\System.Xml.Linq.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UIShapes.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unified.Universal.Blur.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.AI.Navigation.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.Burst.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.Burst.Unsafe.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.Collections.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.Collections.LowLevel.ILSupport.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.InputSystem.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.InputSystem.ForUI.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.Mathematics.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.Postprocessing.Runtime.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.ProBuilder.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.ProBuilder.Csg.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.ProBuilder.KdTree.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.ProBuilder.Poly2Tri.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.ProBuilder.Stl.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.ProGrids.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.Rendering.LightTransport.Runtime.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.RenderPipeline.Universal.ShaderLibrary.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.RenderPipelines.Core.Runtime.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.RenderPipelines.Core.Runtime.Shared.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.RenderPipelines.Core.ShaderLibrary.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.RenderPipelines.GPUDriven.Runtime.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.RenderPipelines.ShaderGraph.ShaderGraphLibrary.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.RenderPipelines.Universal.2D.Runtime.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.RenderPipelines.Universal.Config.Runtime.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.RenderPipelines.Universal.Runtime.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.RenderPipelines.Universal.Shaders.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\Unity.TextMeshPro.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.AccessibilityModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.AIModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.AMDModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.AndroidJNIModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.AnimationModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.ARModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.AssetBundleModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.AudioModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.ClothModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.ClusterInputModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.ClusterRendererModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.ContentLoadModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.CoreModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.CrashReportingModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.DirectorModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.DSPGraphModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.GameCenterModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.GIModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.GraphicsStateCollectionSerializerModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.GridModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.HierarchyCoreModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.HotReloadModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.ImageConversionModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.IMGUIModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.InputForUIModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.InputLegacyModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.InputModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.JSONSerializeModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.LocalizationModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.MarshallingModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.MultiplayerModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.NVIDIAModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.ParticleSystemModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.PerformanceReportingModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.Physics2DModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.PhysicsModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.PropertiesModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.ScreenCaptureModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.ShaderVariantAnalyticsModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.SharedInternalsModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.SpriteMaskModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.SpriteShapeModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.StreamingModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.SubstanceModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.SubsystemsModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.TerrainModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.TerrainPhysicsModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.TextCoreFontEngineModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.TextCoreTextEngineModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.TextRenderingModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.TilemapModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.TLSModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.UI.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.UIElementsModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.UIModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.UmbraModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.UnityAnalyticsCommonModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.UnityAnalyticsModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.UnityConnectModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.UnityCurlModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.UnityTestProtocolModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.UnityWebRequestAssetBundleModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.UnityWebRequestAudioModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.UnityWebRequestModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.UnityWebRequestTextureModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.UnityWebRequestWWWModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.VehiclesModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.VFXModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.VideoModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.VirtualTexturingModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.VRModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.WindModule.dll
+
+
+ D:\SteamLibrary\steamapps\common\Logic World\Logic_World_Data\Managed\UnityEngine.XRModule.dll
+
+
+
+
+
diff --git a/LWGlass/LWGlass.sln b/LWGlass/LWGlass.sln
new file mode 100644
index 0000000..bc00c55
--- /dev/null
+++ b/LWGlass/LWGlass.sln
@@ -0,0 +1,16 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LWGlass", "LWGlass.csproj", "{DBF59BA1-8E2D-479E-ADCD-DD4D7E81C693}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {DBF59BA1-8E2D-479E-ADCD-DD4D7E81C693}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {DBF59BA1-8E2D-479E-ADCD-DD4D7E81C693}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {DBF59BA1-8E2D-479E-ADCD-DD4D7E81C693}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {DBF59BA1-8E2D-479E-ADCD-DD4D7E81C693}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+EndGlobal
diff --git a/LWGlass/components/Building.jecs b/LWGlass/components/Building.jecs
new file mode 100644
index 0000000..4dee781
--- /dev/null
+++ b/LWGlass/components/Building.jecs
@@ -0,0 +1,7 @@
+Glass:
+ column: "Miscellaneous"
+ category: "Structural"
+ prefab:
+ clientCode: LWGlass.Client.Glass
+ placingRules:
+ allowWorldRotation: false
diff --git a/LWGlass/languages/English/English_components.jecs b/LWGlass/languages/English/English_components.jecs
new file mode 100644
index 0000000..920d21c
--- /dev/null
+++ b/LWGlass/languages/English/English_components.jecs
@@ -0,0 +1 @@
+LWGlass.Glass: "Glass"
\ No newline at end of file
diff --git a/LWGlass/manifest.jecs b/LWGlass/manifest.jecs
new file mode 100644
index 0000000..d019c93
--- /dev/null
+++ b/LWGlass/manifest.jecs
@@ -0,0 +1,7 @@
+ID: LWGlass
+Name: LWGlass
+Author: Astronand
+Version: 1.0.0
+Priority: 0
+Dependencies:
+ - AssemblyLoader
\ No newline at end of file
diff --git a/LWGlass/obj/Debug/LWGlass.csproj.AssemblyReference.cache b/LWGlass/obj/Debug/LWGlass.csproj.AssemblyReference.cache
new file mode 100644
index 0000000..773cbac
Binary files /dev/null and b/LWGlass/obj/Debug/LWGlass.csproj.AssemblyReference.cache differ
diff --git a/LWGlass/src/client/Loader.cs b/LWGlass/src/client/Loader.cs
new file mode 100644
index 0000000..75a5ff3
--- /dev/null
+++ b/LWGlass/src/client/Loader.cs
@@ -0,0 +1,16 @@
+using LogicAPI.Client;
+using LogicLog;
+
+namespace LWGlass
+{
+ public class LWGClient : ClientMod
+ {
+
+ static LWGClient() {}
+
+ protected override void Initialize()
+ {
+ Logger.Info("LWGClient - Loaded Client");
+ }
+ }
+}
\ No newline at end of file
diff --git a/LWGlass/src/client/Main.cs b/LWGlass/src/client/Main.cs
new file mode 100644
index 0000000..c074ed8
--- /dev/null
+++ b/LWGlass/src/client/Main.cs
@@ -0,0 +1,147 @@
+using JimmysUnityUtilities;
+using LogicAPI.Data;
+using LogicWorld.Building.Overhaul;
+using LogicWorld.ClientCode;
+using LogicWorld.ClientCode.Resizing;
+using LogicWorld.Interfaces;
+using LogicWorld.Interfaces.Building;
+using LogicWorld.Rendering.Chunks;
+using LogicWorld.Rendering.Components;
+using LogicWorld.Rendering.Dynamics;
+using LogicWorld.SharedCode.Components;
+using Unified.UniversalBlur.Runtime;
+using UnityEngine;
+
+namespace LWGlass.Client
+{
+ public class Glass :
+ ComponentClientCode,
+ IColorableClientCode,
+ IResizableX,
+ IResizableZ
+ {
+ private int previousSizeX;
+ private int previousSizeZ;
+
+ public Color24 Color
+ {
+ get => Data.Color;
+ set => Data.Color = value;
+ }
+ public string ColorsFileKey => "Boards";
+ public float MinColorValue => 0;
+
+ public int SizeX
+ {
+ get => Data.SizeX;
+ set => Data.SizeX = value;
+ }
+ public int MinX => 1;
+ public int MaxX => 80;
+ public float GridIntervalX => 1f;
+
+ public int SizeZ
+ {
+ get => Data.SizeZ;
+ set => Data.SizeZ = value;
+ }
+ public int MinZ => 1;
+ public int MaxZ => 80;
+ public float GridIntervalZ => 1f;
+
+ protected override void OnComponentImaged()
+ {
+ Data.Color = new Color24(255, 255, 255);
+ GameObject obj = Decorations[0].DecorationObject;
+ obj.GetComponent().sharedMaterial = LogicWorld.References.MaterialsCache.StandardUnlitColorTransparent(Color, 0.7f);
+ }
+
+ protected override void DataUpdate()
+ {
+ GameObject obj = Decorations[0].DecorationObject;
+ obj.GetComponent().sharedMaterial = LogicWorld.References.MaterialsCache.StandardUnlitColorTransparent(Color, 0.2f);
+ if (SizeX == previousSizeX && SizeZ == previousSizeZ)
+ return;
+ previousSizeX = SizeX;
+ previousSizeZ = SizeZ;
+ obj.transform.localScale = new Vector3(SizeX, .5f, SizeZ) * 0.3f;
+ }
+ protected override ChildPlacementInfo GenerateChildPlacementInfo()
+ {
+ ChildPlacementInfo childPlacementInfo = new ChildPlacementInfo();
+ childPlacementInfo.Points = new FixedPlacingPoint[SizeZ * SizeX * 2];
+
+ int i = 0;
+ for (int iX = 0; iX < SizeX; iX++)
+ {
+ for (int iZ = 0; iZ < SizeZ; iZ++)
+ {
+ childPlacementInfo.Points[i++] = new FixedPlacingPoint()
+ {
+ Position = new Vector3(iX, .5f, iZ),
+ UpDirection = new Vector3(0, 1, 0)
+ };
+ childPlacementInfo.Points[i++] = new FixedPlacingPoint()
+ {
+ Position = new Vector3(iX, 0, iZ),
+ UpDirection = new Vector3(0, -1, 0)
+ };
+ }
+ }
+ //for (int SX1 = 0; SX1 < SizeX; SX1++)
+ //{
+ // childPlacementInfo.Points[i++] = new FixedPlacingPoint()
+ // {
+ // Position = new Vector3(SX1, 0, -.3f ),
+ // UpDirection = new Vector3(0, 0, -1)
+ // };
+ // childPlacementInfo.Points[i++] = new FixedPlacingPoint()
+ // {
+ // Position = new Vector3(SX1, 0, SizeZ+.3f ),
+ // UpDirection = new Vector3(0, 0, 1)
+ // };
+ //}
+ //for (int SX1 = 0; SX1 < SizeZ; SX1++)
+ //{
+ // childPlacementInfo.Points[i++] = new FixedPlacingPoint()
+ // {
+ // Position = new Vector3(-.3f, 0, SX1 ),
+ // UpDirection = new Vector3(-1, 0, 0)
+ // };
+ // childPlacementInfo.Points[i++] = new FixedPlacingPoint()
+ // {
+ // Position = new Vector3(SizeX+.3f, 0, SX1 ),
+ // UpDirection = new Vector3(1, 0, 0)
+ // };
+ //}
+ return childPlacementInfo;
+ }
+ protected override IDecoration[] GenerateDecorations(Transform parentToCreateDecorationsUnder)
+ {
+ var myGameObject = new GameObject("glass");
+ myGameObject.transform.SetParent(parentToCreateDecorationsUnder);
+ var collider = myGameObject.AddComponent();
+ collider.center = new Vector3(.5f,.5f,.5f);
+ var meshFilter = myGameObject.AddComponent();
+ meshFilter.sharedMesh = LogicWorld.References.Meshes.OriginCube;
+ var meshRenderer = myGameObject.AddComponent();
+ meshRenderer.sharedMaterial = LogicWorld.References.MaterialsCache.StandardUnlitColorTransparent(Color, 0.2f);
+ return new IDecoration[]
+ {
+ new Decoration()
+ {
+ DecorationObject = myGameObject,
+ LocalPosition = new Vector3(-.15f, 0, -.15f),
+ AutoSetupColliders = true,
+ }
+ };
+ }
+
+ protected override void SetDataDefaultValues()
+ {
+ Data.SizeX = 1;
+ Data.SizeZ = 1;
+ Data.Color = new Color24(120, 120, 120);
+ }
+ }
+}
\ No newline at end of file
diff --git a/LWGlass/src/server/loader.cs b/LWGlass/src/server/loader.cs
new file mode 100644
index 0000000..bece219
--- /dev/null
+++ b/LWGlass/src/server/loader.cs
@@ -0,0 +1,8 @@
+using LogicAPI.Server;
+using LogicLog;
+
+public class Loader : ServerMod {
+ protected override void Initialize() {
+ Logger.Info("LWGServer - Loaded server");
+ }
+}
\ No newline at end of file