diff --git a/SCHIZO/Items/ErmBed/ErmBed.cs b/SCHIZO/Items/ErmBed/ErmBed.cs new file mode 100644 index 00000000..15edd4b8 --- /dev/null +++ b/SCHIZO/Items/ErmBed/ErmBed.cs @@ -0,0 +1,43 @@ +using System.Diagnostics.CodeAnalysis; +using UnityEngine; + +namespace SCHIZO.Items.ErmBed; + +public sealed class ErmBed : ClonePrefab +{ + private const TechType CLONE_TARGET = +#if SUBNAUTICA + TechType.NarrowBed; +#else + TechType.BedZeta; +#endif + + private readonly Texture2D _replacementTexture; + + [SetsRequiredMembers] + public ErmBed(ModItem modItem) : base(modItem, CLONE_TARGET) + { + _replacementTexture = ((ErmBedLoader) ModItem.ItemData.loader).blanketTexture; + } + + protected override void ModifyClone(GameObject prefab) + { +#if BELOWZERO + ReplaceTexture(prefab.transform.Find("bed_narrow/bed_covers_outpostzero_lil"), "blanket", _replacementTexture); +#endif + ReplaceTexture(prefab.transform.Find("bed_narrow/pillow_01"), "pillow", _replacementTexture); + + static void ReplaceTexture(Transform obj, string itemName, Texture2D replacementTexture) + { + if (!obj) + { + LOGGER.LogFatal($"Could not find {itemName} for the erm bed!"); + } + else + { + obj.GetComponentsInChildren().ForEach(lod => lod.material.mainTexture = replacementTexture); + LOGGER.LogDebug($"Replaced {itemName} texture"); + } + } + } +} diff --git a/SCHIZO/Items/ErmBed/ErmBedLoader.cs b/SCHIZO/Items/ErmBed/ErmBedLoader.cs new file mode 100644 index 00000000..4f5fdbf3 --- /dev/null +++ b/SCHIZO/Items/ErmBed/ErmBedLoader.cs @@ -0,0 +1,9 @@ +namespace SCHIZO.Items.ErmBed; + +partial class ErmBedLoader +{ + public override void Load(ModItem modItem) + { + new ErmBed(modItem).Register(); + } +} diff --git a/SCHIZO/Resources/AssetBundles/assets b/SCHIZO/Resources/AssetBundles/assets index 8153d448..2ebcc5db 100644 Binary files a/SCHIZO/Resources/AssetBundles/assets and b/SCHIZO/Resources/AssetBundles/assets differ diff --git a/Unity/Assets/Mod/Erm Bed.meta b/Unity/Assets/Mod/Erm Bed.meta new file mode 100644 index 00000000..0a95dcbc --- /dev/null +++ b/Unity/Assets/Mod/Erm Bed.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 99c5a860c9851c84a8b1049578e335ec +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity/Assets/Mod/Erm Bed/Erm Bed recipe.asset b/Unity/Assets/Mod/Erm Bed/Erm Bed recipe.asset new file mode 100644 index 00000000..b7923d61 --- /dev/null +++ b/Unity/Assets/Mod/Erm Bed/Erm Bed recipe.asset @@ -0,0 +1,33 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b866aaf9b7a04025ace784047bf1ff78, type: 3} + m_Name: Erm Bed recipe + m_EditorClassIdentifier: + game: 3 + craftAmount: 1 + ingredients: + - item: + isCustom: 0 + techType: 16 + itemData: {fileID: 0} + amount: 1 + - item: + isCustom: 0 + techType: 3 + itemData: {fileID: 0} + amount: 1 + - item: + isCustom: 1 + techType: 3 + itemData: {fileID: 11400000, guid: c413dda5acae2794f8122a4d7b04cb53, type: 2} + amount: 1 + linkedItems: [] diff --git a/Unity/Assets/Mod/Erm Bed/Erm Bed recipe.asset.meta b/Unity/Assets/Mod/Erm Bed/Erm Bed recipe.asset.meta new file mode 100644 index 00000000..5774ee25 --- /dev/null +++ b/Unity/Assets/Mod/Erm Bed/Erm Bed recipe.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fdfcef575533c63489a4f1cd9e53fb79 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity/Assets/Mod/Erm Bed/Erm Bed.asset b/Unity/Assets/Mod/Erm Bed/Erm Bed.asset new file mode 100644 index 00000000..076c3069 --- /dev/null +++ b/Unity/Assets/Mod/Erm Bed/Erm Bed.asset @@ -0,0 +1,67 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: df4563dc669f9794796a4ad61212cb60, type: 3} + m_Name: Erm Bed + m_EditorClassIdentifier: + prefab: {fileID: 0} + loader: + id: 0 + classId: ermbed + displayName: Erm Bed + tooltip: '[PH] What if..we hold hands..under the Erm blanket tonight? :flushed: + + Haha + just kidding... unless..? :pleading_face: :point_right::point_left:' + icon: {fileID: 21300000, guid: de33cd9fb1d7b1845b02a84bb068ecdd, type: 3} + itemSize: {x: 1, y: 1} + isCraftable: 0 + isBuildable: 1 + craftingTime: 2.5 + itemSounds: {fileID: 0} + pdaEncyInfo: {fileID: 0} + knownTechInfo: {fileID: 0} + spawnData: {fileID: 0} + unlockAtStart: 1 + registerInSN: 1 + recipeSN: {fileID: 11400000, guid: fdfcef575533c63489a4f1cd9e53fb79, type: 2} + craftTreeTypeSN: 0 + craftTreePathSN: + techGroupSN: 13 + techCategorySN: 24 + requiredForUnlockSN: + isCustom: 0 + techType: 0 + itemData: {fileID: 0} + equipmentTypeSN: 0 + quickSlotTypeSN: 0 + registerInBZ: 1 + recipeBZ: {fileID: 11400000, guid: fdfcef575533c63489a4f1cd9e53fb79, type: 2} + canBeRecycledBZ: 1 + craftTreeTypeBZ: 0 + craftTreePathBZ: + techGroupBZ: 12 + techCategoryBZ: 15 + soundTypeBZ: 0 + requiredForUnlockBZ: + isCustom: 0 + techType: 0 + itemData: {fileID: 0} + equipmentTypeBZ: 0 + quickSlotTypeBZ: 0 + coldResistanceBZ: 0 + references: + version: 1 + 00000000: + type: {class: ErmBedLoader, ns: SCHIZO.Items.ErmBed, asm: SCHIZO} + data: + blanketTexture: {fileID: 2800000, guid: 091cd90205f7d704998359c66d1c1ff0, + type: 3} diff --git a/Unity/Assets/Mod/Erm Bed/Erm Bed.asset.meta b/Unity/Assets/Mod/Erm Bed/Erm Bed.asset.meta new file mode 100644 index 00000000..90ddd69a --- /dev/null +++ b/Unity/Assets/Mod/Erm Bed/Erm Bed.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8df69dce16e6a9746b1e9ea5c820d3ef +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity/Assets/Mod/Erm Bed/erm bed icon.png b/Unity/Assets/Mod/Erm Bed/erm bed icon.png new file mode 100644 index 00000000..29f811a5 Binary files /dev/null and b/Unity/Assets/Mod/Erm Bed/erm bed icon.png differ diff --git a/Unity/Assets/Mod/Erm Bed/erm bed icon.png.meta b/Unity/Assets/Mod/Erm Bed/erm bed icon.png.meta new file mode 100644 index 00000000..f44d4d0b --- /dev/null +++ b/Unity/Assets/Mod/Erm Bed/erm bed icon.png.meta @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: de33cd9fb1d7b1845b02a84bb068ecdd +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 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 2 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 0 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 1 + 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: 1 + 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/Unity/Assets/Mod/Erm Bed/erm blanket 2.png b/Unity/Assets/Mod/Erm Bed/erm blanket 2.png new file mode 100644 index 00000000..39cb41fb Binary files /dev/null and b/Unity/Assets/Mod/Erm Bed/erm blanket 2.png differ diff --git a/Unity/Assets/Mod/Erm Bed/erm blanket 2.png.meta b/Unity/Assets/Mod/Erm Bed/erm blanket 2.png.meta new file mode 100644 index 00000000..c6c3eecd --- /dev/null +++ b/Unity/Assets/Mod/Erm Bed/erm blanket 2.png.meta @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: 091cd90205f7d704998359c66d1c1ff0 +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 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 4096 + 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: 4096 + 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: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity/Assets/Mod/ErmMoon.meta b/Unity/Assets/Mod/Erm Moon.meta similarity index 100% rename from Unity/Assets/Mod/ErmMoon.meta rename to Unity/Assets/Mod/Erm Moon.meta diff --git a/Unity/Assets/Mod/ErmMoon/ErmMoon Prefab.prefab b/Unity/Assets/Mod/Erm Moon/ErmMoon Prefab.prefab similarity index 100% rename from Unity/Assets/Mod/ErmMoon/ErmMoon Prefab.prefab rename to Unity/Assets/Mod/Erm Moon/ErmMoon Prefab.prefab diff --git a/Unity/Assets/Mod/ErmMoon/ErmMoon Prefab.prefab.meta b/Unity/Assets/Mod/Erm Moon/ErmMoon Prefab.prefab.meta similarity index 100% rename from Unity/Assets/Mod/ErmMoon/ErmMoon Prefab.prefab.meta rename to Unity/Assets/Mod/Erm Moon/ErmMoon Prefab.prefab.meta diff --git a/Unity/Assets/Mod/ErmMoon/ErmMoon.asset b/Unity/Assets/Mod/Erm Moon/ErmMoon.asset similarity index 100% rename from Unity/Assets/Mod/ErmMoon/ErmMoon.asset rename to Unity/Assets/Mod/Erm Moon/ErmMoon.asset diff --git a/Unity/Assets/Mod/ErmMoon/ErmMoon.asset.meta b/Unity/Assets/Mod/Erm Moon/ErmMoon.asset.meta similarity index 100% rename from Unity/Assets/Mod/ErmMoon/ErmMoon.asset.meta rename to Unity/Assets/Mod/Erm Moon/ErmMoon.asset.meta diff --git a/Unity/Assets/Mod/Green Screen.meta b/Unity/Assets/Mod/Green Screen.meta new file mode 100644 index 00000000..3d668fcb --- /dev/null +++ b/Unity/Assets/Mod/Green Screen.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 40743374a2e95b246ba228e7ec30ed09 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity/Assets/Mod/Green Screen/Green Floor data.asset b/Unity/Assets/Mod/Green Screen/Green Floor data.asset new file mode 100644 index 00000000..3ce53ffe --- /dev/null +++ b/Unity/Assets/Mod/Green Screen/Green Floor data.asset @@ -0,0 +1,61 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: df4563dc669f9794796a4ad61212cb60, type: 3} + m_Name: Green Floor data + m_EditorClassIdentifier: + prefab: {fileID: 456273940500059029, guid: 21380df773ee0334db0dd0db0209ccee, type: 3} + loader: + id: 0 + classId: GreenScreenFloor + displayName: Green Screen (floor) + tooltip: + icon: {fileID: 0} + itemSize: {x: 1, y: 1} + isCraftable: 0 + isBuildable: 1 + craftingTime: 2.5 + itemSounds: {fileID: 0} + pdaEncyInfo: {fileID: 0} + knownTechInfo: {fileID: 0} + spawnData: {fileID: 0} + unlockAtStart: 0 + registerInSN: 1 + recipeSN: {fileID: 0} + craftTreeTypeSN: 0 + craftTreePathSN: + techGroupSN: 13 + techCategorySN: 24 + requiredForUnlockSN: + isCustom: 0 + techType: 0 + itemData: {fileID: 0} + equipmentTypeSN: 0 + quickSlotTypeSN: 0 + registerInBZ: 1 + recipeBZ: {fileID: 0} + canBeRecycledBZ: 1 + craftTreeTypeBZ: 0 + craftTreePathBZ: + techGroupBZ: 12 + techCategoryBZ: 15 + soundTypeBZ: 0 + requiredForUnlockBZ: + isCustom: 0 + techType: 0 + itemData: {fileID: 0} + equipmentTypeBZ: 0 + quickSlotTypeBZ: 0 + coldResistanceBZ: 0 + references: + version: 1 + 00000000: + type: {class: ItemLoader, ns: SCHIZO.Items, asm: SCHIZO} diff --git a/Unity/Assets/Mod/Green Screen/Green Floor data.asset.meta b/Unity/Assets/Mod/Green Screen/Green Floor data.asset.meta new file mode 100644 index 00000000..bed0593c --- /dev/null +++ b/Unity/Assets/Mod/Green Screen/Green Floor data.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ac6932989e512cc43a944ca4fc5924f0 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity/Assets/Mod/Green Screen/Green Floor.prefab b/Unity/Assets/Mod/Green Screen/Green Floor.prefab new file mode 100644 index 00000000..9077b58c --- /dev/null +++ b/Unity/Assets/Mod/Green Screen/Green Floor.prefab @@ -0,0 +1,194 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2096995648092717187 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3473914985751132053} + - component: {fileID: 7817805567715915498} + - component: {fileID: 6086178491821244563} + - component: {fileID: 6924784365111259668} + - component: {fileID: 8677799294987692282} + m_Layer: 0 + m_Name: Plane + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3473914985751132053 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2096995648092717187} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 7223037923677726006} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &7817805567715915498 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2096995648092717187} + m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6086178491821244563 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2096995648092717187} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 2 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 2 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!114 &6924784365111259668 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2096995648092717187} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0d417745ed6014148bf3c69eddaca6e2, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!64 &8677799294987692282 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2096995648092717187} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 4 + m_Convex: 1 + m_CookingOptions: 30 + m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1001 &6289821351774297008 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 3059532183318913016, guid: 055ea2993f5883c459e08e4ea6b9d277, + type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3059532183318913016, guid: 055ea2993f5883c459e08e4ea6b9d277, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3059532183318913016, guid: 055ea2993f5883c459e08e4ea6b9d277, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3059532183318913016, guid: 055ea2993f5883c459e08e4ea6b9d277, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3059532183318913016, guid: 055ea2993f5883c459e08e4ea6b9d277, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3059532183318913016, guid: 055ea2993f5883c459e08e4ea6b9d277, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3059532183318913016, guid: 055ea2993f5883c459e08e4ea6b9d277, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3059532183318913016, guid: 055ea2993f5883c459e08e4ea6b9d277, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3059532183318913016, guid: 055ea2993f5883c459e08e4ea6b9d277, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3059532183318913016, guid: 055ea2993f5883c459e08e4ea6b9d277, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3059532183318913016, guid: 055ea2993f5883c459e08e4ea6b9d277, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3128168738599764137, guid: 055ea2993f5883c459e08e4ea6b9d277, + type: 3} + propertyPath: allowedOnWall + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3128168738599764137, guid: 055ea2993f5883c459e08e4ea6b9d277, + type: 3} + propertyPath: allowedOnCeiling + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5844807597456787493, guid: 055ea2993f5883c459e08e4ea6b9d277, + type: 3} + propertyPath: m_Name + value: Green Floor + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 055ea2993f5883c459e08e4ea6b9d277, type: 3} +--- !u!4 &7223037923677726006 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 3707744013501136518, guid: 055ea2993f5883c459e08e4ea6b9d277, + type: 3} + m_PrefabInstance: {fileID: 6289821351774297008} + m_PrefabAsset: {fileID: 0} diff --git a/Unity/Assets/Mod/Green Screen/Green Floor.prefab.meta b/Unity/Assets/Mod/Green Screen/Green Floor.prefab.meta new file mode 100644 index 00000000..6e50b43d --- /dev/null +++ b/Unity/Assets/Mod/Green Screen/Green Floor.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 21380df773ee0334db0dd0db0209ccee +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity/Assets/Mod/Green Screen/Green Screens.asset b/Unity/Assets/Mod/Green Screen/Green Screens.asset new file mode 100644 index 00000000..3bf3fbd7 --- /dev/null +++ b/Unity/Assets/Mod/Green Screen/Green Screens.asset @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c08c4776b89c430d985e9557dc60112d, type: 3} + m_Name: Green Screens + m_EditorClassIdentifier: + registryItems: [] diff --git a/Unity/Assets/Mod/Green Screen/Green Screens.asset.meta b/Unity/Assets/Mod/Green Screen/Green Screens.asset.meta new file mode 100644 index 00000000..ad493a06 --- /dev/null +++ b/Unity/Assets/Mod/Green Screen/Green Screens.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8015418bedfe6234d9823f8b8a51fbc3 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity/Assets/Mod/Green Screen/Green Wall data.asset b/Unity/Assets/Mod/Green Screen/Green Wall data.asset new file mode 100644 index 00000000..2c7612ea --- /dev/null +++ b/Unity/Assets/Mod/Green Screen/Green Wall data.asset @@ -0,0 +1,61 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: df4563dc669f9794796a4ad61212cb60, type: 3} + m_Name: Green Wall data + m_EditorClassIdentifier: + prefab: {fileID: 833226311777099631, guid: 8594e06a461706741907dc6dead682ce, type: 3} + loader: + id: 0 + classId: GreenScreenWall + displayName: Green Screen (wall) + tooltip: + icon: {fileID: 0} + itemSize: {x: 1, y: 1} + isCraftable: 0 + isBuildable: 1 + craftingTime: 2.5 + itemSounds: {fileID: 0} + pdaEncyInfo: {fileID: 0} + knownTechInfo: {fileID: 0} + spawnData: {fileID: 0} + unlockAtStart: 0 + registerInSN: 1 + recipeSN: {fileID: 0} + craftTreeTypeSN: 0 + craftTreePathSN: + techGroupSN: 13 + techCategorySN: 24 + requiredForUnlockSN: + isCustom: 0 + techType: 0 + itemData: {fileID: 0} + equipmentTypeSN: 0 + quickSlotTypeSN: 0 + registerInBZ: 1 + recipeBZ: {fileID: 0} + canBeRecycledBZ: 1 + craftTreeTypeBZ: 0 + craftTreePathBZ: + techGroupBZ: 12 + techCategoryBZ: 15 + soundTypeBZ: 0 + requiredForUnlockBZ: + isCustom: 0 + techType: 0 + itemData: {fileID: 0} + equipmentTypeBZ: 0 + quickSlotTypeBZ: 0 + coldResistanceBZ: 0 + references: + version: 1 + 00000000: + type: {class: ItemLoader, ns: SCHIZO.Items, asm: SCHIZO} diff --git a/Unity/Assets/Mod/Green Screen/Green Wall data.asset.meta b/Unity/Assets/Mod/Green Screen/Green Wall data.asset.meta new file mode 100644 index 00000000..bef82696 --- /dev/null +++ b/Unity/Assets/Mod/Green Screen/Green Wall data.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6710c9cdea33a7f4ab8ba37ee479c8e8 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity/Assets/Mod/Green Screen/Green Wall.prefab b/Unity/Assets/Mod/Green Screen/Green Wall.prefab new file mode 100644 index 00000000..9c2241c1 --- /dev/null +++ b/Unity/Assets/Mod/Green Screen/Green Wall.prefab @@ -0,0 +1,86 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &992256816563719418 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 456273940500059029, guid: 21380df773ee0334db0dd0db0209ccee, + type: 3} + propertyPath: m_Name + value: Green Wall + objectReference: {fileID: 0} + - target: {fileID: 3473914985751132053, guid: 21380df773ee0334db0dd0db0209ccee, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 3473914985751132053, guid: 21380df773ee0334db0dd0db0209ccee, + type: 3} + propertyPath: m_LocalRotation.z + value: -0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 3473914985751132053, guid: 21380df773ee0334db0dd0db0209ccee, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: -90 + objectReference: {fileID: 0} + - target: {fileID: 9024170759101465672, guid: 21380df773ee0334db0dd0db0209ccee, + type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9024170759101465672, guid: 21380df773ee0334db0dd0db0209ccee, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9024170759101465672, guid: 21380df773ee0334db0dd0db0209ccee, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9024170759101465672, guid: 21380df773ee0334db0dd0db0209ccee, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9024170759101465672, guid: 21380df773ee0334db0dd0db0209ccee, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9024170759101465672, guid: 21380df773ee0334db0dd0db0209ccee, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9024170759101465672, guid: 21380df773ee0334db0dd0db0209ccee, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9024170759101465672, guid: 21380df773ee0334db0dd0db0209ccee, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9024170759101465672, guid: 21380df773ee0334db0dd0db0209ccee, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9024170759101465672, guid: 21380df773ee0334db0dd0db0209ccee, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9024170759101465672, guid: 21380df773ee0334db0dd0db0209ccee, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 21380df773ee0334db0dd0db0209ccee, type: 3} diff --git a/Unity/Assets/Mod/Green Screen/Green Wall.prefab.meta b/Unity/Assets/Mod/Green Screen/Green Wall.prefab.meta new file mode 100644 index 00000000..92cb3d45 --- /dev/null +++ b/Unity/Assets/Mod/Green Screen/Green Wall.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8594e06a461706741907dc6dead682ce +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity/Assets/Mod/Registry.asset b/Unity/Assets/Mod/Registry.asset index 9008a481..8f17abc9 100644 --- a/Unity/Assets/Mod/Registry.asset +++ b/Unity/Assets/Mod/Registry.asset @@ -15,10 +15,13 @@ MonoBehaviour: registryItems: - {fileID: 11400000, guid: 87067f32545a0f74b95731190912dcd3, type: 2} - {fileID: 11400000, guid: 89d1591f3f478f5499a26e7970ce6f40, type: 2} + - {fileID: 11400000, guid: 8df69dce16e6a9746b1e9ea5c820d3ef, type: 2} - {fileID: 11400000, guid: 2001b19be75ff684aa38223bca2a074a, type: 2} - {fileID: 11400000, guid: 0e02cf6a34773f0448fcaf3dc90f0a92, type: 2} - {fileID: 11400000, guid: 5159b45dc6c3d83449b9eb96602c772c, type: 2} - {fileID: 11400000, guid: 8e637e13ab814a74ea04f99028676dc1, type: 2} + - {fileID: 11400000, guid: ac6932989e512cc43a944ca4fc5924f0, type: 2} + - {fileID: 11400000, guid: 6710c9cdea33a7f4ab8ba37ee479c8e8, type: 2} - {fileID: 11400000, guid: 3bff6ebf65b5a574c8236cebdf45f0c3, type: 2} - {fileID: 11400000, guid: 9468e8aad1813fd4798c9fca7a768467, type: 2} - {fileID: 11400000, guid: 6abf367663a723f4fa2a8e0715a05a6c, type: 2} diff --git a/Unity/Assets/Scripts/SCHIZO/Items/ErmBed.meta b/Unity/Assets/Scripts/SCHIZO/Items/ErmBed.meta new file mode 100644 index 00000000..d550d0aa --- /dev/null +++ b/Unity/Assets/Scripts/SCHIZO/Items/ErmBed.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fd513556345970944a364ea51584d136 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity/Assets/Scripts/SCHIZO/Items/ErmBed/ErmBedLoader.cs b/Unity/Assets/Scripts/SCHIZO/Items/ErmBed/ErmBedLoader.cs new file mode 100644 index 00000000..54f937c0 --- /dev/null +++ b/Unity/Assets/Scripts/SCHIZO/Items/ErmBed/ErmBedLoader.cs @@ -0,0 +1,20 @@ +using JetBrains.Annotations; +using SCHIZO.Items.Data; +using TriInspector; +using UnityEngine; + +namespace SCHIZO.Items.ErmBed +{ + [UsedImplicitly] + public sealed partial class ErmBedLoader : ItemLoader + { + [Required] + public Texture2D blanketTexture; + + public override TriValidationResult AcceptsItem(ItemData item) + { + return item.classId.ToLower() == "ermbed" ? TriValidationResult.Valid + : TriValidationResult.Error("ErmBedLoader only accepts an ErmBed"); + } + } +} diff --git a/Unity/Assets/Scripts/SCHIZO/Items/ErmBed/ErmBedLoader.cs.meta b/Unity/Assets/Scripts/SCHIZO/Items/ErmBed/ErmBedLoader.cs.meta new file mode 100644 index 00000000..b01964ec --- /dev/null +++ b/Unity/Assets/Scripts/SCHIZO/Items/ErmBed/ErmBedLoader.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 128bd9dba3b06d2449b280a448db7aeb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity/Assets/Scripts/SCHIZO/Items/GreenScreen.meta b/Unity/Assets/Scripts/SCHIZO/Items/GreenScreen.meta new file mode 100644 index 00000000..c6e745f2 --- /dev/null +++ b/Unity/Assets/Scripts/SCHIZO/Items/GreenScreen.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8654075e15d207d47970675f1740fc35 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity/Assets/Scripts/SCHIZO/Items/GreenScreen/GreenScreen.cs b/Unity/Assets/Scripts/SCHIZO/Items/GreenScreen/GreenScreen.cs new file mode 100644 index 00000000..bc9f7d3b --- /dev/null +++ b/Unity/Assets/Scripts/SCHIZO/Items/GreenScreen/GreenScreen.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace SCHIZO.Items.GreenScreen +{ + [AddComponentMenu("SCHIZO/Items/Green Screen")] + public sealed partial class GreenScreen : MonoBehaviour + { + public void Awake() + { + GetComponent().material.color = Color.green; + } + } +} \ No newline at end of file diff --git a/Unity/Assets/Scripts/SCHIZO/Items/GreenScreen/GreenScreen.cs.meta b/Unity/Assets/Scripts/SCHIZO/Items/GreenScreen/GreenScreen.cs.meta new file mode 100644 index 00000000..b4e75f59 --- /dev/null +++ b/Unity/Assets/Scripts/SCHIZO/Items/GreenScreen/GreenScreen.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0d417745ed6014148bf3c69eddaca6e2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity/Assets/Scripts/SCHIZO/Items/Gymbag/GymbagLoader.cs b/Unity/Assets/Scripts/SCHIZO/Items/Gymbag/GymbagLoader.cs index c48352c1..91c7f66d 100644 --- a/Unity/Assets/Scripts/SCHIZO/Items/Gymbag/GymbagLoader.cs +++ b/Unity/Assets/Scripts/SCHIZO/Items/Gymbag/GymbagLoader.cs @@ -1,9 +1,17 @@ using JetBrains.Annotations; +using SCHIZO.Items.Data; +using TriInspector; namespace SCHIZO.Items.Gymbag { [UsedImplicitly] public sealed partial class GymbagLoader : ItemLoader { + public override TriValidationResult AcceptsItem(ItemData item) + { + string classId = item.classId.ToLower(); + return classId == "gymbag" || classId == "quantumgymbag" ? TriValidationResult.Valid + : TriValidationResult.Error("GymbagLoader only accepts a Gymbag or a QuantumGymbag"); + } } }