Merge branch 'release_1'

This commit is contained in:
minenice55 2023-10-05 20:31:12 -04:00
commit 9c2ae80322
111 changed files with 18006 additions and 4811 deletions

View file

@ -73,6 +73,14 @@ namespace Starpelly
return val >= min && val <= max; return val >= min && val <= max;
} }
/// <summary>
/// Returns true if a value is within a certain range.
/// </summary>
public static bool IsWithin(this Vector2 val, Vector2 min, Vector2 max)
{
return val.x.IsWithin(min.x, max.x) && val.y.IsWithin(min.y, max.y);
}
/// <summary> /// <summary>
/// Returns true if value is between two numbers. /// Returns true if value is between two numbers.
/// </summary> /// </summary>

View file

@ -1,6 +1,6 @@
<align="center"><b>Programming</b></align> <align="center"><b>Programming</b></align>
-<indent=5%>Megaminerzero</indent> -<indent=5%>Megaminerzero</indent>
-<indent=5%>Starpelly <alpha=#88>(Rhythm Heaven Mania)<alpha=#FF></indent> -<indent=5%>Starpelly</indent>
-<indent=5%>minenice</indent> -<indent=5%>minenice</indent>
-<indent=5%>huantian</indent> -<indent=5%>huantian</indent>
-<indent=5%>Slaith12</indent> -<indent=5%>Slaith12</indent>
@ -20,7 +20,7 @@
<align="center"><b>Artwork</b></align> <align="center"><b>Artwork</b></align>
-<indent=5%>Ko Takeuchi <alpha=#88>(Original <i>Rhythm Heaven</i> Assets)<alpha=#FF></indent> -<indent=5%>Ko Takeuchi <alpha=#88>(Original <i>Rhythm Heaven</i> Assets)<alpha=#FF></indent>
-<indent=5%>Nintendo <alpha=#88>(Original <i>Rhythm Heaven</i> Assets)<alpha=#FF></indent> -<indent=5%>Nintendo <alpha=#88>(Original <i>Rhythm Heaven</i> Assets)<alpha=#FF></indent>
-<indent=5%>Starpelly <alpha=#88>(Rhythm Heaven Mania)<alpha=#FF></indent> -<indent=5%>Starpelly</indent>
-<indent=5%>OctaHeart <alpha=#88>(Logo)<alpha=#FF></indent> -<indent=5%>OctaHeart <alpha=#88>(Logo)<alpha=#FF></indent>
-<indent=5%>ev <alpha=#88>(Editor UI)<alpha=#FF></indent> -<indent=5%>ev <alpha=#88>(Editor UI)<alpha=#FF></indent>
-<indent=5%>Seanski2 <alpha=#88>(Minigame Icons)<alpha=#FF></indent> -<indent=5%>Seanski2 <alpha=#88>(Minigame Icons)<alpha=#FF></indent>

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9ff0c04cbd659ef43bccfe273684eadf
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 00ba8359d55aea94799b54c203adf38f
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View file

@ -2,14 +2,15 @@
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000 --- !u!21 &2100000
Material: Material:
serializedVersion: 6 serializedVersion: 8
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_Name: FOT-Rodin Pro DB Entity m_Name: FOT-Rodin Pro DB Entity
m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3} m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3}
m_ShaderKeywords: m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4 m_LightmapFlags: 4
m_EnableInstancingVariants: 0 m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0 m_DoubleSidedGI: 0
@ -39,6 +40,7 @@ Material:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats: m_Floats:
- _Ambient: 1 - _Ambient: 1
- _Bevel: 0.5 - _Bevel: 0.5

View file

@ -14,9 +14,9 @@ Texture2D:
m_DownscaleFallback: 0 m_DownscaleFallback: 0
m_IsAlphaChannelOptional: 0 m_IsAlphaChannelOptional: 0
serializedVersion: 2 serializedVersion: 2
m_Width: 0 m_Width: 1
m_Height: 0 m_Height: 1
m_CompleteImageSize: 0 m_CompleteImageSize: 1
m_MipsStripped: 0 m_MipsStripped: 0
m_TextureFormat: 1 m_TextureFormat: 1
m_MipCount: 1 m_MipCount: 1
@ -40,8 +40,8 @@ Texture2D:
m_LightmapFormat: 0 m_LightmapFormat: 0
m_ColorSpace: 0 m_ColorSpace: 0
m_PlatformBlob: m_PlatformBlob:
image data: 0 image data: 1
_typelessdata: _typelessdata: 00
m_StreamData: m_StreamData:
serializedVersion: 2 serializedVersion: 2
offset: 0 offset: 0
@ -59,21 +59,14 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3} m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3}
m_Name: FOT-Rodin Pro DB SDF Dynamic m_Name: FOT-Rodin Pro DB SDF Dynamic
m_EditorClassIdentifier: m_EditorClassIdentifier:
hashCode: -716773919
material: {fileID: 5296781804180034499}
materialHashCode: -1646043487
m_Version: 1.1.0 m_Version: 1.1.0
m_SourceFontFileGUID: d9b391ecd583bd54fa458814fbcad7be
m_SourceFontFile_EditorRef: {fileID: 12800000, guid: d9b391ecd583bd54fa458814fbcad7be, type: 3}
m_SourceFontFile: {fileID: 12800000, guid: d9b391ecd583bd54fa458814fbcad7be, type: 3}
m_AtlasPopulationMode: 1
m_FaceInfo: m_FaceInfo:
m_FaceIndex: 0 m_FaceIndex: 0
m_FamilyName: FOT-Rodin Pro m_FamilyName: FOT-Rodin Pro
m_StyleName: DB m_StyleName: DB
m_PointSize: 90 m_PointSize: 90
m_Scale: 1 m_Scale: 1
m_UnitsPerEM: 0 m_UnitsPerEM: 1000
m_LineHeight: 180 m_LineHeight: 180
m_AscentLine: 79.200005 m_AscentLine: 79.200005
m_CapLine: 71 m_CapLine: 71
@ -89,59 +82,16 @@ MonoBehaviour:
m_StrikethroughOffset: 20 m_StrikethroughOffset: 20
m_StrikethroughThickness: 4.5 m_StrikethroughThickness: 4.5
m_TabWidth: 31 m_TabWidth: 31
m_GlyphTable: [] m_Material: {fileID: 5296781804180034499}
m_CharacterTable: [] m_SourceFontFileGUID: d9b391ecd583bd54fa458814fbcad7be
m_AtlasTextures:
- {fileID: -7616882842637102995}
m_AtlasTextureIndex: 0
m_IsMultiAtlasTexturesEnabled: 1
m_ClearDynamicDataOnBuild: 1
m_UsedGlyphRects: []
m_FreeGlyphRects:
- m_X: 0
m_Y: 0
m_Width: 2047
m_Height: 2047
m_fontInfo:
Name:
PointSize: 0
Scale: 0
CharacterCount: 0
LineHeight: 0
Baseline: 0
Ascender: 0
CapHeight: 0
Descender: 0
CenterLine: 0
SuperscriptOffset: 0
SubscriptOffset: 0
SubSize: 0
Underline: 0
UnderlineThickness: 0
strikethrough: 0
strikethroughThickness: 0
TabWidth: 0
Padding: 0
AtlasWidth: 0
AtlasHeight: 0
atlas: {fileID: 0}
m_AtlasWidth: 2048
m_AtlasHeight: 2048
m_AtlasPadding: 9
m_AtlasRenderMode: 4165
m_glyphInfoList: []
m_KerningTable:
kerningPairs: []
m_FontFeatureTable:
m_GlyphPairAdjustmentRecords: []
fallbackFontAssets: []
m_FallbackFontAssetTable: []
m_CreationSettings: m_CreationSettings:
sourceFontFileName: sourceFontFileName:
sourceFontFileGUID: d9b391ecd583bd54fa458814fbcad7be sourceFontFileGUID: d9b391ecd583bd54fa458814fbcad7be
faceIndex: 0
pointSizeSamplingMode: 0 pointSizeSamplingMode: 0
pointSize: 90 pointSize: 90
padding: 9 padding: 9
paddingMode: 0
packingMode: 0 packingMode: 0
atlasWidth: 2048 atlasWidth: 2048
atlasHeight: 2048 atlasHeight: 2048
@ -153,6 +103,115 @@ MonoBehaviour:
fontStyleModifier: 0 fontStyleModifier: 0
renderMode: 4165 renderMode: 4165
includeFontFeatures: 0 includeFontFeatures: 0
m_SourceFontFile: {fileID: 12800000, guid: d9b391ecd583bd54fa458814fbcad7be, type: 3}
m_SourceFontFilePath:
m_AtlasPopulationMode: 1
InternalDynamicOS: 0
m_GlyphTable: []
m_CharacterTable: []
m_AtlasTextures:
- {fileID: -7616882842637102995}
m_AtlasTextureIndex: 0
m_IsMultiAtlasTexturesEnabled: 1
m_GetFontFeatures: 1
m_ClearDynamicDataOnBuild: 1
m_AtlasWidth: 2048
m_AtlasHeight: 2048
m_AtlasPadding: 9
m_AtlasRenderMode: 4165
m_UsedGlyphRects: []
m_FreeGlyphRects:
- m_X: 0
m_Y: 0
m_Width: 2047
m_Height: 2047
m_FontFeatureTable:
m_MultipleSubstitutionRecords: []
m_LigatureSubstitutionRecords:
- m_ComponentGlyphIDs: 4f000000100000004e000000
m_LigatureGlyphID: 11868
- m_ComponentGlyphIDs: 4f00000054000000
m_LigatureGlyphID: 8029
m_GlyphPairAdjustmentRecords:
- m_FirstAdjustmentRecord:
m_GlyphIndex: 79
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 1.8000001
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 87
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: -1702022880
- m_FirstAdjustmentRecord:
m_GlyphIndex: 79
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0.45000002
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 90
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: -1702022880
- m_FirstAdjustmentRecord:
m_GlyphIndex: 87
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -4.5
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 13
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: -1702022880
- m_FirstAdjustmentRecord:
m_GlyphIndex: 87
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -4.5
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 15
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: -1702022880
- m_FirstAdjustmentRecord:
m_GlyphIndex: 87
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 4.1400003
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 122
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: -1702022880
m_MarkToBaseAdjustmentRecords: []
m_MarkToMarkAdjustmentRecords: []
m_ShouldReimportFontFeatures: 0
m_FallbackFontAssetTable: []
m_FontWeightTable: m_FontWeightTable:
- regularTypeface: {fileID: 0} - regularTypeface: {fileID: 0}
italicTypeface: {fileID: 0} italicTypeface: {fileID: 0}
@ -181,6 +240,33 @@ MonoBehaviour:
boldSpacing: 7 boldSpacing: 7
italicStyle: 35 italicStyle: 35
tabSize: 10 tabSize: 10
m_fontInfo:
Name:
PointSize: 0
Scale: 0
CharacterCount: 0
LineHeight: 0
Baseline: 0
Ascender: 0
CapHeight: 0
Descender: 0
CenterLine: 0
SuperscriptOffset: 0
SubscriptOffset: 0
SubSize: 0
Underline: 0
UnderlineThickness: 0
strikethrough: 0
strikethroughThickness: 0
TabWidth: 0
Padding: 0
AtlasWidth: 0
AtlasHeight: 0
m_glyphInfoList: []
m_KerningTable:
kerningPairs: []
fallbackFontAssets: []
atlas: {fileID: 0}
--- !u!21 &5296781804180034499 --- !u!21 &5296781804180034499
Material: Material:
serializedVersion: 8 serializedVersion: 8

File diff suppressed because one or more lines are too long

View file

@ -59,7 +59,7 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
m_Material: {fileID: 0} m_Material: {fileID: 0}
m_Color: {r: 0.20392157, g: 0.20392157, b: 0.20392157, a: 1} m_Color: {r: 0.6509804, g: 0.6509804, b: 0.6509804, a: 1}
m_RaycastTarget: 1 m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1 m_Maskable: 1
@ -185,15 +185,17 @@ MonoBehaviour:
m_lineSpacingMax: 0 m_lineSpacingMax: 0
m_paragraphSpacing: 0 m_paragraphSpacing: 0
m_charWidthMaxAdj: 0 m_charWidthMaxAdj: 0
m_enableWordWrapping: 1 m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4 m_wordWrappingRatios: 0.4
m_overflowMode: 0 m_overflowMode: 0
m_linkedTextComponent: {fileID: 0} m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0} parentLinkedComponent: {fileID: 0}
m_enableKerning: 1 m_enableKerning: 1
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0 m_enableExtraPadding: 0
checkPaddingRequired: 0 checkPaddingRequired: 0
m_isRichText: 1 m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1 m_parseCtrlCharacters: 1
m_isOrthographic: 1 m_isOrthographic: 1
m_isCullingEnabled: 0 m_isCullingEnabled: 0
@ -323,7 +325,7 @@ RectTransform:
m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 50, y: 50} m_SizeDelta: {x: 32, y: 32}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &8995444694228702769 --- !u!222 &8995444694228702769
CanvasRenderer: CanvasRenderer:
@ -474,10 +476,10 @@ RectTransform:
m_Father: {fileID: 8995444695563632161} m_Father: {fileID: 8995444695563632161}
m_RootOrder: 3 m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 1} m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0.5, y: 1} m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: -124.099976} m_AnchoredPosition: {x: 0, y: -124.099976}
m_SizeDelta: {x: 1202, y: 27.28003} m_SizeDelta: {x: -64, y: 27.28003}
m_Pivot: {x: 0.5, y: 0} m_Pivot: {x: 0.5, y: 0}
--- !u!222 &8995444694302297417 --- !u!222 &8995444694302297417
CanvasRenderer: CanvasRenderer:
@ -494,7 +496,7 @@ MonoBehaviour:
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8995444694302297421} m_GameObject: {fileID: 8995444694302297421}
m_Enabled: 1 m_Enabled: 0
m_EditorHideFlags: 0 m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name: m_Name:
@ -535,7 +537,7 @@ MonoBehaviour:
m_Top: 0 m_Top: 0
m_Bottom: 0 m_Bottom: 0
m_ChildAlignment: 0 m_ChildAlignment: 0
m_Spacing: 0 m_Spacing: 4
m_ChildForceExpandWidth: 1 m_ChildForceExpandWidth: 1
m_ChildForceExpandHeight: 0 m_ChildForceExpandHeight: 0
m_ChildControlWidth: 1 m_ChildControlWidth: 1
@ -668,15 +670,17 @@ MonoBehaviour:
m_lineSpacingMax: 0 m_lineSpacingMax: 0
m_paragraphSpacing: 0 m_paragraphSpacing: 0
m_charWidthMaxAdj: 0 m_charWidthMaxAdj: 0
m_enableWordWrapping: 1 m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4 m_wordWrappingRatios: 0.4
m_overflowMode: 0 m_overflowMode: 0
m_linkedTextComponent: {fileID: 0} m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0} parentLinkedComponent: {fileID: 0}
m_enableKerning: 1 m_enableKerning: 1
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0 m_enableExtraPadding: 0
checkPaddingRequired: 0 checkPaddingRequired: 0
m_isRichText: 1 m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1 m_parseCtrlCharacters: 1
m_isOrthographic: 1 m_isOrthographic: 1
m_isCullingEnabled: 0 m_isCullingEnabled: 0
@ -824,7 +828,7 @@ RectTransform:
m_AnchorMin: {x: 1, y: 1} m_AnchorMin: {x: 1, y: 1}
m_AnchorMax: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: -38, y: -38} m_AnchoredPosition: {x: -38, y: -38}
m_SizeDelta: {x: 52, y: 52} m_SizeDelta: {x: 42, y: 42}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &8995444695466722202 --- !u!222 &8995444695466722202
CanvasRenderer: CanvasRenderer:
@ -854,7 +858,7 @@ MonoBehaviour:
m_OnCullStateChanged: m_OnCullStateChanged:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
m_Sprite: {fileID: 0} m_Sprite: {fileID: 21300000, guid: 77703dfffd29ca6439338d6adfc62c9b, type: 3}
m_Type: 1 m_Type: 1
m_PreserveAspect: 0 m_PreserveAspect: 0
m_FillCenter: 1 m_FillCenter: 1

View file

@ -27,6 +27,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 3276216358884288554} - {fileID: 3276216358884288554}
m_Father: {fileID: 3276216360127051165} m_Father: {fileID: 3276216360127051165}
@ -73,6 +74,7 @@ RectTransform:
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 3276216360411725377} - {fileID: 3276216360411725377}
m_Father: {fileID: 3276216359486296926} m_Father: {fileID: 3276216359486296926}
@ -150,6 +152,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 3276216359673638260} - {fileID: 3276216359673638260}
m_Father: {fileID: 3276216358621914657} m_Father: {fileID: 3276216358621914657}
@ -283,6 +286,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 3276216359294279433} - {fileID: 3276216359294279433}
m_Father: {fileID: 3276216359814484404} m_Father: {fileID: 3276216359814484404}
@ -416,6 +420,7 @@ RectTransform:
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 3276216360127051165} - {fileID: 3276216360127051165}
m_Father: {fileID: 3276216359861115896} m_Father: {fileID: 3276216359861115896}
@ -507,14 +512,15 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []
m_Father: {fileID: 3276216360127051165} m_Father: {fileID: 3276216360127051165}
m_RootOrder: 1 m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0} m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 705.5, y: 0} m_AnchoredPosition: {x: 627.5, y: 0}
m_SizeDelta: {x: 1371, y: 0} m_SizeDelta: {x: 1215, y: 0}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &3276216359264292463 --- !u!222 &3276216359264292463
CanvasRenderer: CanvasRenderer:
@ -587,15 +593,17 @@ MonoBehaviour:
m_lineSpacingMax: 0 m_lineSpacingMax: 0
m_paragraphSpacing: 0 m_paragraphSpacing: 0
m_charWidthMaxAdj: 0 m_charWidthMaxAdj: 0
m_enableWordWrapping: 1 m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4 m_wordWrappingRatios: 0.4
m_overflowMode: 0 m_overflowMode: 0
m_linkedTextComponent: {fileID: 0} m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0} parentLinkedComponent: {fileID: 0}
m_enableKerning: 1 m_enableKerning: 1
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0 m_enableExtraPadding: 0
checkPaddingRequired: 0 checkPaddingRequired: 0
m_isRichText: 1 m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1 m_parseCtrlCharacters: 1
m_isOrthographic: 1 m_isOrthographic: 1
m_isCullingEnabled: 0 m_isCullingEnabled: 0
@ -675,6 +683,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []
m_Father: {fileID: 3276216358902658882} m_Father: {fileID: 3276216358902658882}
m_RootOrder: 0 m_RootOrder: 0
@ -750,6 +759,7 @@ RectTransform:
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []
m_Father: {fileID: 3276216359692268649} m_Father: {fileID: 3276216359692268649}
m_RootOrder: 0 m_RootOrder: 0
@ -826,6 +836,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 3276216359861115896} - {fileID: 3276216359861115896}
- {fileID: 3276216358758736494} - {fileID: 3276216358758736494}
@ -918,6 +929,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []
m_Father: {fileID: 3276216358884288554} m_Father: {fileID: 3276216358884288554}
m_RootOrder: 0 m_RootOrder: 0
@ -991,6 +1003,7 @@ RectTransform:
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 3276216359458918366} - {fileID: 3276216359458918366}
m_Father: {fileID: 3276216360247263705} m_Father: {fileID: 3276216360247263705}
@ -1028,6 +1041,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 3276216358902658882} - {fileID: 3276216358902658882}
m_Father: {fileID: 3276216360127051165} m_Father: {fileID: 3276216360127051165}
@ -1075,6 +1089,7 @@ RectTransform:
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 3276216359023061022} - {fileID: 3276216359023061022}
- {fileID: 3276216360247263705} - {fileID: 3276216360247263705}
@ -1141,8 +1156,8 @@ MonoBehaviour:
m_Vertical: 1 m_Vertical: 1
m_MovementType: 1 m_MovementType: 1
m_Elasticity: 0.1 m_Elasticity: 0.1
m_Inertia: 0 m_Inertia: 1
m_DecelerationRate: 0.135 m_DecelerationRate: 0.01
m_ScrollSensitivity: 35 m_ScrollSensitivity: 35
m_Viewport: {fileID: 3276216359023061022} m_Viewport: {fileID: 3276216359023061022}
m_HorizontalScrollbar: {fileID: 0} m_HorizontalScrollbar: {fileID: 0}
@ -1182,6 +1197,7 @@ RectTransform:
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 3276216358621914657} - {fileID: 3276216358621914657}
- {fileID: 3276216359264292461} - {fileID: 3276216359264292461}
@ -1263,6 +1279,7 @@ RectTransform:
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: m_Children:
- {fileID: 3276216359692268649} - {fileID: 3276216359692268649}
m_Father: {fileID: 3276216359861115896} m_Father: {fileID: 3276216359861115896}
@ -1388,6 +1405,7 @@ RectTransform:
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []
m_Father: {fileID: 3276216358758736494} m_Father: {fileID: 3276216358758736494}
m_RootOrder: 0 m_RootOrder: 0
@ -1468,15 +1486,17 @@ MonoBehaviour:
m_lineSpacingMax: 0 m_lineSpacingMax: 0
m_paragraphSpacing: 0 m_paragraphSpacing: 0
m_charWidthMaxAdj: 0 m_charWidthMaxAdj: 0
m_enableWordWrapping: 1 m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4 m_wordWrappingRatios: 0.4
m_overflowMode: 0 m_overflowMode: 0
m_linkedTextComponent: {fileID: 0} m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0} parentLinkedComponent: {fileID: 0}
m_enableKerning: 1 m_enableKerning: 1
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0 m_enableExtraPadding: 0
checkPaddingRequired: 0 checkPaddingRequired: 0
m_isRichText: 1 m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1 m_parseCtrlCharacters: 1
m_isOrthographic: 1 m_isOrthographic: 1
m_isCullingEnabled: 0 m_isCullingEnabled: 0

View file

@ -14,8 +14,8 @@ RenderTexture:
m_DownscaleFallback: 0 m_DownscaleFallback: 0
m_IsAlphaChannelOptional: 0 m_IsAlphaChannelOptional: 0
serializedVersion: 5 serializedVersion: 5
m_Width: 1728 m_Width: 1109
m_Height: 972 m_Height: 623
m_AntiAliasing: 2 m_AntiAliasing: 2
m_MipCount: -1 m_MipCount: -1
m_DepthStencilFormat: 92 m_DepthStencilFormat: 92

View file

@ -14,8 +14,8 @@ RenderTexture:
m_DownscaleFallback: 0 m_DownscaleFallback: 0
m_IsAlphaChannelOptional: 0 m_IsAlphaChannelOptional: 0
serializedVersion: 5 serializedVersion: 5
m_Width: 2592 m_Width: 1663
m_Height: 1458 m_Height: 934
m_AntiAliasing: 1 m_AntiAliasing: 1
m_MipCount: -1 m_MipCount: -1
m_DepthStencilFormat: 92 m_DepthStencilFormat: 92

Binary file not shown.

Before

Width:  |  Height:  |  Size: 122 B

After

Width:  |  Height:  |  Size: 225 B

View file

@ -3,7 +3,7 @@ guid: f9232c079e126cd48a7344b23eaf42a5
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 2048 maxTextureSize: 2048
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 0 textureCompression: 2
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
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: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -106,12 +132,13 @@ TextureImporter:
physicsShape: [] physicsShape: []
bones: [] bones: []
spriteID: 5e97eb03825dee720800000000000000 spriteID: 5e97eb03825dee720800000000000000
internalID: 0 internalID: 1537655665
vertices: [] vertices: []
indices: indices:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -20,6 +20,15 @@ AnimationClip:
- curve: - curve:
serializedVersion: 2 serializedVersion: 2
m_Curve: m_Curve:
- serializedVersion: 3
time: 0
value: 4.8
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3 - serializedVersion: 3
time: 0.016666668 time: 0.016666668
value: 4.8 value: 4.8
@ -48,15 +57,13 @@ AnimationClip:
m_PPtrCurves: m_PPtrCurves:
- curve: - curve:
- time: 0 - time: 0
value: {fileID: 6240004448574861874, guid: d25eab4740f92b74087acaa572d8a1c4, type: 3} value: {fileID: 1473124820, guid: 655fc978fc6e6ca41a3d3104b43298bd, type: 3}
- time: 0.016666668
value: {fileID: 6240004448574861874, guid: d25eab4740f92b74087acaa572d8a1c4, type: 3}
- time: 0.05 - time: 0.05
value: {fileID: -1354652295505547112, guid: d25eab4740f92b74087acaa572d8a1c4, type: 3} value: {fileID: -91994477, guid: 655fc978fc6e6ca41a3d3104b43298bd, type: 3}
- time: 0.083333336 - time: 0.083333336
value: {fileID: -159972075433952791, guid: d25eab4740f92b74087acaa572d8a1c4, type: 3} value: {fileID: -1267118016, guid: 655fc978fc6e6ca41a3d3104b43298bd, type: 3}
- time: 0.11666667 - time: 0.11666667
value: {fileID: 5181778189044111492, guid: d25eab4740f92b74087acaa572d8a1c4, type: 3} value: {fileID: -1983818443, guid: 655fc978fc6e6ca41a3d3104b43298bd, type: 3}
attribute: m_Sprite attribute: m_Sprite
path: Graphic path: Graphic
classID: 114 classID: 114
@ -83,11 +90,10 @@ AnimationClip:
customType: 0 customType: 0
isPPtrCurve: 1 isPPtrCurve: 1
pptrCurveMapping: pptrCurveMapping:
- {fileID: 6240004448574861874, guid: d25eab4740f92b74087acaa572d8a1c4, type: 3} - {fileID: 1473124820, guid: 655fc978fc6e6ca41a3d3104b43298bd, type: 3}
- {fileID: 6240004448574861874, guid: d25eab4740f92b74087acaa572d8a1c4, type: 3} - {fileID: -91994477, guid: 655fc978fc6e6ca41a3d3104b43298bd, type: 3}
- {fileID: -1354652295505547112, guid: d25eab4740f92b74087acaa572d8a1c4, type: 3} - {fileID: -1267118016, guid: 655fc978fc6e6ca41a3d3104b43298bd, type: 3}
- {fileID: -159972075433952791, guid: d25eab4740f92b74087acaa572d8a1c4, type: 3} - {fileID: -1983818443, guid: 655fc978fc6e6ca41a3d3104b43298bd, type: 3}
- {fileID: 5181778189044111492, guid: d25eab4740f92b74087acaa572d8a1c4, type: 3}
m_AnimationClipSettings: m_AnimationClipSettings:
serializedVersion: 2 serializedVersion: 2
m_AdditiveReferencePoseClip: {fileID: 0} m_AdditiveReferencePoseClip: {fileID: 0}
@ -112,6 +118,15 @@ AnimationClip:
- curve: - curve:
serializedVersion: 2 serializedVersion: 2
m_Curve: m_Curve:
- serializedVersion: 3
time: 0
value: 4.8
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3 - serializedVersion: 3
time: 0.016666668 time: 0.016666668
value: 4.8 value: 4.8

View file

@ -20,7 +20,7 @@ AnimationClip:
m_PPtrCurves: m_PPtrCurves:
- curve: - curve:
- time: 0 - time: 0
value: {fileID: -9052558874090446877, guid: d25eab4740f92b74087acaa572d8a1c4, type: 3} value: {fileID: 2011919177, guid: 655fc978fc6e6ca41a3d3104b43298bd, type: 3}
attribute: m_Sprite attribute: m_Sprite
path: Graphic path: Graphic
classID: 114 classID: 114
@ -40,7 +40,7 @@ AnimationClip:
customType: 0 customType: 0
isPPtrCurve: 1 isPPtrCurve: 1
pptrCurveMapping: pptrCurveMapping:
- {fileID: -9052558874090446877, guid: d25eab4740f92b74087acaa572d8a1c4, type: 3} - {fileID: 2011919177, guid: 655fc978fc6e6ca41a3d3104b43298bd, type: 3}
m_AnimationClipSettings: m_AnimationClipSettings:
serializedVersion: 2 serializedVersion: 2
m_AdditiveReferencePoseClip: {fileID: 0} m_AdditiveReferencePoseClip: {fileID: 0}

View file

@ -20,7 +20,7 @@ AnimationClip:
m_PPtrCurves: m_PPtrCurves:
- curve: - curve:
- time: 0 - time: 0
value: {fileID: 5181778189044111492, guid: d25eab4740f92b74087acaa572d8a1c4, type: 3} value: {fileID: -1983818443, guid: 655fc978fc6e6ca41a3d3104b43298bd, type: 3}
attribute: m_Sprite attribute: m_Sprite
path: Graphic path: Graphic
classID: 114 classID: 114
@ -40,7 +40,7 @@ AnimationClip:
customType: 0 customType: 0
isPPtrCurve: 1 isPPtrCurve: 1
pptrCurveMapping: pptrCurveMapping:
- {fileID: 5181778189044111492, guid: d25eab4740f92b74087acaa572d8a1c4, type: 3} - {fileID: -1983818443, guid: 655fc978fc6e6ca41a3d3104b43298bd, type: 3}
m_AnimationClipSettings: m_AnimationClipSettings:
serializedVersion: 2 serializedVersion: 2
m_AdditiveReferencePoseClip: {fileID: 0} m_AdditiveReferencePoseClip: {fileID: 0}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

View file

@ -3,7 +3,7 @@ guid: b7a1fac8b59b4d14289fa198206ef47e
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

View file

@ -33,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -67,10 +67,10 @@ TextureImporter:
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 2048 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 1 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -101,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 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: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []

View file

@ -3,7 +3,7 @@ guid: 39656548c069d5541a9d9d1a808a76e4
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -3,7 +3,7 @@ guid: 6dd981c3e3319f243b56549e3f26fb72
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 2048 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
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: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -0,0 +1,257 @@
fileFormatVersion: 2
guid: 655fc978fc6e6ca41a3d3104b43298bd
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
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
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 0
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
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: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 256
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
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: Server
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:
- serializedVersion: 2
name: autoplay_0
rect:
serializedVersion: 2
x: 0
y: 0
width: 32
height: 32
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 672ded1a8ba4c93438f5ce6ac146c5c9
internalID: -1983818443
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: autoplay_1
rect:
serializedVersion: 2
x: 32
y: 0
width: 32
height: 32
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 801ff7807807f9b4cbf93407358070b8
internalID: -1267118016
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: autoplay_2
rect:
serializedVersion: 2
x: 64
y: 0
width: 32
height: 32
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 474e20f632bd42344af459b1022c612a
internalID: -91994477
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: autoplay_3
rect:
serializedVersion: 2
x: 96
y: 0
width: 32
height: 32
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 48e39d246f49dc546b5b07e88238cd83
internalID: 1473124820
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: autoplay_4
rect:
serializedVersion: 2
x: 128
y: 0
width: 32
height: 32
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: d479d07287a393649b83a8a3dd03c235
internalID: 2011919177
vertices: []
indices:
edges: []
weights: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable:
autoplay_0: -1983818443
autoplay_1: -1267118016
autoplay_2: -91994477
autoplay_3: 1473124820
autoplay_4: 2011919177
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View file

@ -3,7 +3,7 @@ guid: e85d5d286a8191b499c570d33dd0899c
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

View file

@ -33,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -67,10 +67,10 @@ TextureImporter:
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 2048 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 1 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -101,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 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: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []

View file

@ -3,7 +3,7 @@ guid: 49e59e302f4a24a4da56bd63185fcb01
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

Binary file not shown.

After

Width:  |  Height:  |  Size: 740 B

View file

@ -0,0 +1,147 @@
fileFormatVersion: 2
guid: 4ea196d68cba90a4d8b08ad6fe012f49
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
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
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 0
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
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: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 32
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
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: Server
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: []
nameFileIdTable: {}
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View file

@ -3,7 +3,7 @@ guid: dd516f1a3380ca642939d4fa86603249
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 77 KiB

After

Width:  |  Height:  |  Size: 5.2 KiB

View file

@ -3,7 +3,7 @@ guid: 05e0181d5d7f7144f9263d1ccca41112
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -3,7 +3,7 @@ guid: 55bb46a7614176b4c941a5caf846f7e8
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -3,7 +3,7 @@ guid: 57971d0838f02124080be29466f8f638
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 2048 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
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: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1 KiB

View file

@ -3,7 +3,7 @@ guid: ebef38bdbaa406747b71f2e1944deda2
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -41,7 +42,7 @@ TextureImporter:
nPOTScale: 0 nPOTScale: 0
lightmap: 0 lightmap: 0
compressionQuality: 50 compressionQuality: 50
spriteMode: 1 spriteMode: 2
spriteExtrude: 1 spriteExtrude: 1
spriteMeshType: 1 spriteMeshType: 1
alignment: 0 alignment: 0
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,9 +101,75 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites:
- serializedVersion: 2
name: top
rect:
serializedVersion: 2
x: 0
y: 24
width: 64
height: 40
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 1, z: 0, w: 0}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: b2234eea6e56b0345980a27759a8fc26
internalID: 1735959733
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: bottom
rect:
serializedVersion: 2
x: 0
y: 0
width: 64
height: 25
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 64b90d23bd4f157469bed27275bccb02
internalID: -851579828
vertices: []
indices:
edges: []
weights: []
outline: [] outline: []
physicsShape: [] physicsShape: []
bones: [] bones: []
@ -112,6 +180,9 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable:
bottom: -851579828
top: 1735959733
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View file

@ -0,0 +1,147 @@
fileFormatVersion: 2
guid: 1b346468a32e5fa45ba9e3343c18fc43
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
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
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 0
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 7
spritePivot: {x: 0.5, y: 0}
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
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 32
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
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: Server
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: 1537655665
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View file

@ -3,7 +3,7 @@ guid: a1e215e768b7d1b4e93a60f8ce9c10fc
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -3,7 +3,7 @@ guid: 8ae7d31f585b0cf4483963e20305e4f8
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

Binary file not shown.

After

Width:  |  Height:  |  Size: 903 B

View file

@ -0,0 +1,147 @@
fileFormatVersion: 2
guid: 42ffabfe4c37e104d8e9d884fe7db980
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
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
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 0
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
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: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 32
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
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: Server
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: []
nameFileIdTable: {}
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View file

@ -3,7 +3,7 @@ guid: 1256a95b617ffc0458b3aec7fba83afe
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -3,7 +3,7 @@ guid: ba34210de39bafc4d9bc0bb9163d83c7
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -3,7 +3,7 @@ guid: 0c2c8bed0306b7d408a268884c6af79b
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 521af96912848ef4887f49a524efb143
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 755 B

View file

@ -0,0 +1,345 @@
fileFormatVersion: 2
guid: bd48ded17f064414eb670529c2375358
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
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
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
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: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
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: Server
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:
- serializedVersion: 2
name: right
rect:
serializedVersion: 2
x: 0
y: 0
width: 64
height: 64
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 6, y: 6, z: 6, w: 6}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 5695434ae09b7894888b9766c0fafe5c
internalID: -1106677661
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: top
rect:
serializedVersion: 2
x: 64
y: 0
width: 64
height: 64
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 6, y: 6, z: 6, w: 6}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 1350a8d457f4c424f98c69ce6e6df1be
internalID: 1099965293
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: topleft
rect:
serializedVersion: 2
x: 128
y: 0
width: 64
height: 64
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 6, y: 6, z: 6, w: 6}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 3f2592c6e00f5894ab312ff3ce6f5dc1
internalID: -997670817
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: topright
rect:
serializedVersion: 2
x: 192
y: 0
width: 64
height: 64
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 6, y: 6, z: 6, w: 6}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 782584f2863184b458a12717d9678b79
internalID: -1853719049
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: all
rect:
serializedVersion: 2
x: 256
y: 0
width: 64
height: 64
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 6, y: 6, z: 6, w: 6}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 0f3cd91703739b04b86d55ba7d1b25e9
internalID: 1401309272
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: bottom
rect:
serializedVersion: 2
x: 320
y: 0
width: 64
height: 64
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 6, y: 6, z: 6, w: 6}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: e3d49d09c750a384aac9b16bb51b26a2
internalID: 1782490243
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: bottomleft
rect:
serializedVersion: 2
x: 384
y: 0
width: 64
height: 64
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 6, y: 6, z: 6, w: 6}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: ed9f01dd79b2205449a42f45cb342289
internalID: 1973936073
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: bottomright
rect:
serializedVersion: 2
x: 448
y: 0
width: 64
height: 64
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 6, y: 6, z: 6, w: 6}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 03b889313964dcb47baff7696505e9c8
internalID: -520399450
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: left
rect:
serializedVersion: 2
x: 512
y: 0
width: 64
height: 64
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 6, y: 6, z: 6, w: 6}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: c40d45e6189a98a4c873384925aab9f1
internalID: 1937931747
vertices: []
indices:
edges: []
weights: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable:
all: 1401309272
bottom: 1782490243
bottomleft: 1973936073
bottomright: -520399450
left: 1937931747
right: -1106677661
top: 1099965293
topleft: -997670817
topright: -1853719049
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View file

@ -3,7 +3,7 @@ guid: 9ae7ecf2cc001d14595ec03e1d4d86a6
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -3,7 +3,7 @@ guid: 6e7b88d9d62ed1b429c63b83745e3672
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -111,6 +113,18 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -124,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

View file

@ -33,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -67,10 +67,10 @@ TextureImporter:
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 2048 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 1 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -101,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 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: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []

View file

@ -3,7 +3,7 @@ guid: e63dfe3b432d7404bab9ef307426a0bf
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -3,7 +3,7 @@ guid: 44c391c5df20f2844b9437c0f3138355
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -3,7 +3,7 @@ guid: 21da6678ec5624a439f87f3487819ac0
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -3,7 +3,7 @@ guid: 348825b5c77b9d143961119fc008e631
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -3,7 +3,7 @@ guid: b29210cf5b7b8234984ec842a3110005
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -3,7 +3,7 @@ guid: 027d0a4d1b2bb2d4fa529145afb6e506
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -32,7 +33,7 @@ TextureImporter:
maxTextureSize: 2048 maxTextureSize: 2048
textureSettings: textureSettings:
serializedVersion: 2 serializedVersion: 2
filterMode: 1 filterMode: 0
aniso: 1 aniso: 1
mipBias: 0 mipBias: 0
wrapU: 1 wrapU: 1
@ -62,9 +63,58 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 32
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
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: Server
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 maxTextureSize: 2048
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
@ -88,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View file

@ -0,0 +1,147 @@
fileFormatVersion: 2
guid: 9d635a6edbcd76549a58fd1b4640cc99
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
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
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
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: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 32
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
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: Server
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: []
nameFileIdTable: {}
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View file

@ -3,7 +3,7 @@ guid: 5562630d3cb1e1b439e6f0d06c45b14a
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -3,7 +3,7 @@ guid: 6f76ee0157ff5854295d8d0b12b5f165
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

View file

@ -3,7 +3,7 @@ guid: c158bbf3be7618c468e696e8c2c54e95
TextureImporter: TextureImporter:
internalIDToNameTable: [] internalIDToNameTable: []
externalObjects: {} externalObjects: {}
serializedVersion: 11 serializedVersion: 12
mipmaps: mipmaps:
mipMapMode: 0 mipMapMode: 0
enableMipMap: 0 enableMipMap: 0
@ -24,6 +24,7 @@ TextureImporter:
streamingMipmaps: 0 streamingMipmaps: 0
streamingMipmapsPriority: 0 streamingMipmapsPriority: 0
vTOnly: 0 vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0 grayScaleToAlpha: 0
generateCubemap: 6 generateCubemap: 6
cubemapConvolution: 0 cubemapConvolution: 0
@ -62,13 +63,14 @@ TextureImporter:
textureFormatSet: 0 textureFormatSet: 0
ignorePngGamma: 0 ignorePngGamma: 0
applyGammaDecoding: 0 applyGammaDecoding: 0
cookieLightType: 1
platformSettings: platformSettings:
- serializedVersion: 3 - serializedVersion: 3
buildTarget: DefaultTexturePlatform buildTarget: DefaultTexturePlatform
maxTextureSize: 64 maxTextureSize: 32
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
textureCompression: 2 textureCompression: 0
compressionQuality: 50 compressionQuality: 50
crunchedCompression: 0 crunchedCompression: 0
allowsAlphaSplitting: 0 allowsAlphaSplitting: 0
@ -99,6 +101,30 @@ TextureImporter:
overridden: 0 overridden: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 64
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: [] sprites: []
@ -112,6 +138,7 @@ TextureImporter:
edges: [] edges: []
weights: [] weights: []
secondaryTextures: [] secondaryTextures: []
nameFileIdTable: {}
spritePackingTag: spritePackingTag:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0 pSDShowRemoveMatteOption: 0

Binary file not shown.

After

Width:  |  Height:  |  Size: 667 B

View file

@ -0,0 +1,147 @@
fileFormatVersion: 2
guid: a0b769f6af690934f97fb73c271e1830
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
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
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
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: 35, y: 0, z: 35, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 128
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
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: Server
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: 1537655665
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View file

@ -2,14 +2,15 @@
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000 --- !u!21 &2100000
Material: Material:
serializedVersion: 6 serializedVersion: 8
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_Name: karateman_cellshader m_Name: karateman_cellshader
m_Shader: {fileID: 4800000, guid: ff54fed5718ccc543808dec1f266d1c8, type: 3} m_Shader: {fileID: 4800000, guid: ff54fed5718ccc543808dec1f266d1c8, type: 3}
m_ShaderKeywords: m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4 m_LightmapFlags: 4
m_EnableInstancingVariants: 0 m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0 m_DoubleSidedGI: 0
@ -55,6 +56,7 @@ Material:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats: m_Floats:
- _BumpScale: 1 - _BumpScale: 1
- _ColorMask: 15 - _ColorMask: 15
@ -82,8 +84,8 @@ Material:
m_Colors: m_Colors:
- _AddColor: {r: 0, g: 0, b: 0, a: 0} - _AddColor: {r: 0, g: 0, b: 0, a: 0}
- _Color: {r: 1, g: 1, b: 1, a: 1} - _Color: {r: 1, g: 1, b: 1, a: 1}
- _ColorAlpha: {r: 0.84705883, g: 0.8156863, b: 0.6901961, a: 1} - _ColorAlpha: {r: 1, g: 1, b: 1, a: 1}
- _ColorBravo: {r: 1, g: 0, b: 0, a: 1} - _ColorBravo: {r: 1, g: 0, b: 0, a: 1}
- _ColorDelta: {r: 0.972549, g: 0.972549, b: 0.972549, a: 1} - _ColorDelta: {r: 0.81, g: 0.81, b: 0.81, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: [] m_BuildTextureStacks: []

File diff suppressed because it is too large Load diff

View file

@ -1,8 +1,8 @@
using System; using System;
public static class AppInfo { public static class AppInfo {
public const string Version = "0.0.982"; public const string Version = "0.0.1002";
public static readonly DateTime Date = new DateTime(2023, 09, 11, 20, 44, 02, 741, DateTimeKind.Utc); public static readonly DateTime Date = new DateTime(2023, 09, 27, 22, 20, 38, 655, DateTimeKind.Utc);
} }

View file

@ -222,6 +222,7 @@ namespace HeavenStudio
Beatmap.AddNewVolumeChange(0, 100f); Beatmap.AddNewVolumeChange(0, 100f);
Beatmap.data.offset = 0f; Beatmap.data.offset = 0f;
Conductor.instance.musicSource.clip = null; Conductor.instance.musicSource.clip = null;
RiqFileHandler.UnlockCache();
RiqFileHandler.WriteRiq(Beatmap); RiqFileHandler.WriteRiq(Beatmap);
AudioLoadDone = true; AudioLoadDone = true;
} }
@ -683,7 +684,7 @@ namespace HeavenStudio
GoForAPerfect.instance.Disable(); GoForAPerfect.instance.Disable();
SectionMedalsManager.instance?.OnRemixEnd(); SectionMedalsManager.instance?.OnRemixEnd();
GlobalGameManager.UpdateDiscordStatus(Beatmap["remixtitle"], false, true); GlobalGameManager.UpdateDiscordStatus(Beatmap["remixtitle"].ToString(), false, true);
Play(beat, 1f); Play(beat, 1f);
yield break; yield break;

View file

@ -23,8 +23,7 @@ namespace HeavenStudio.Editor.Track
private float lastPosX; private float lastPosX;
private float lastContentScale; private float lastContentScale;
private float lastTimelineSize; private float lastTimelineSize;
private float lastZoom;
private float contentPosX => Mathf.Abs(scrollRect.content.localPosition.x / scrollRect.content.localScale.x);
private List<GameObject> Lines = new List<GameObject>(); private List<GameObject> Lines = new List<GameObject>();
@ -50,10 +49,12 @@ namespace HeavenStudio.Editor.Track
{ {
if (Editor.instance.fullscreen) return; if (Editor.instance.fullscreen) return;
var x = Mathf.FloorToInt(contentPosX); // var x = Mathp.Round2Nearest(contentPosX, Timeline.instance.PixelsPerBeat);
var x = Mathp.Round2Nearest(-scrollRect.content.anchoredPosition.x, Timeline.instance.PixelsPerBeat);
var pos = new Vector3(x, transform.localPosition.y, transform.localPosition.z); var pos = new Vector3(x, transform.localPosition.y, transform.localPosition.z);
transform.localPosition = pos; transform.localPosition = pos;
GetComponent<RectTransform>().anchoredPosition = new Vector3(rectTransform.anchoredPosition.x, rectTransform.anchoredPosition.y, 0); rectTransform.anchoredPosition = new Vector3(rectTransform.anchoredPosition.x, rectTransform.anchoredPosition.y, 0);
rectTransform.sizeDelta = new Vector2(rectTransform.sizeDelta.x, transform.parent.parent.parent.GetComponent<RectTransform>().rect.height);
UpdateCount(); UpdateCount();
} }
@ -62,28 +63,27 @@ namespace HeavenStudio.Editor.Track
private void UpdateCount() private void UpdateCount()
{ {
var changeScale = (scrollRect.viewport.rect.size.x != lastTimelineSize || scrollRect.content.localScale.x != lastContentScale); var changeScale = (scrollRect.viewport.rect.size.x != lastTimelineSize || scrollRect.content.localScale.x != lastContentScale) ||
(Timeline.instance.Zoom != lastZoom);
if (changeScale) if (changeScale)
{ {
var rightSide = (scrollRect.viewport.GetComponent<RectTransform>().rect.width / scrollRect.content.localScale.x) + contentPosX;
for (int i = 0; i < Lines.Count; i++) for (int i = 0; i < Lines.Count; i++)
Destroy(Lines[i].gameObject); Destroy(Lines[i].gameObject);
Lines.Clear(); Lines.Clear();
count = Mathf.RoundToInt(rightSide - contentPosX) + 2; count = Mathf.RoundToInt(scrollRect.viewport.GetComponent<RectTransform>().rect.width / Timeline.instance.PixelsPerBeat) + 2;
for (int i = 0; i < count; i++) for (int i = 0; i < count; i++)
{ {
var line = Instantiate(transform.GetChild(0).gameObject, transform); var line = Instantiate(transform.GetChild(0).gameObject.GetComponent<RectTransform>(), transform);
line.transform.localPosition = new Vector3(i, line.transform.localPosition.y, line.transform.localPosition.z); line.anchoredPosition = new Vector3(i * Timeline.instance.PixelsPerBeat, line.transform.localPosition.y, line.transform.localPosition.z);
var halfBeatRect = line.transform.GetChild(2).GetComponent<RectTransform>(); var halfBeatRect = line.transform.GetChild(2).GetComponent<RectTransform>();
halfBeatRect.anchoredPosition = new Vector3(scrollRect.content.localScale.x * 0.5f, halfBeatRect.anchoredPosition.y); halfBeatRect.anchoredPosition = new Vector3(Timeline.instance.PixelsPerBeat * 0.5f, halfBeatRect.anchoredPosition.y);
line.SetActive(true); line.gameObject.SetActive(true);
Lines.Add(line); Lines.Add(line.gameObject);
} }
UpdateGridNum(); UpdateGridNum();
@ -96,6 +96,7 @@ namespace HeavenStudio.Editor.Track
lastContentScale = scrollRect.content.localScale.x; lastContentScale = scrollRect.content.localScale.x;
lastTimelineSize = scrollRect.viewport.rect.size.x; lastTimelineSize = scrollRect.viewport.rect.size.x;
lastZoom = Timeline.instance.Zoom;
lastPosX = rectTransform.anchoredPosition.x; lastPosX = rectTransform.anchoredPosition.x;
} }
@ -106,7 +107,7 @@ namespace HeavenStudio.Editor.Track
var line = Lines[i]; var line = Lines[i];
if (line.transform.childCount == 0) continue; if (line.transform.childCount == 0) continue;
var newNum = Mathf.RoundToInt(rectTransform.anchoredPosition.x + ((i) / snap)); var newNum = Mathf.RoundToInt((rectTransform.anchoredPosition.x / Timeline.instance.PixelsPerBeat) + ((i) / snap));
line.transform.GetChild(0).GetComponent<TMP_Text>().text = newNum.ToString(CultureInfo.CurrentCulture); line.transform.GetChild(0).GetComponent<TMP_Text>().text = newNum.ToString(CultureInfo.CurrentCulture);
} }
} }

View file

@ -1,206 +1,136 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine; using UnityEngine;
using UnityEngine.UI; using UnityEngine.UI;
using Starpelly;
using HeavenStudio.Editor.Track; using HeavenStudio.Editor.Track;
using DG.Tweening;
using Starpelly;
namespace HeavenStudio.Editor namespace HeavenStudio.Editor
{ {
public class BoxSelection : MonoBehaviour public class BoxSelection : MonoBehaviour
{ {
[SerializeField] private RectTransform boxVisual;
[SerializeField] private RectTransform timelineContent;
private Rect selectionBox;
private Vector2 startPosition = Vector2.zero;
private Vector2 endPosition = Vector2.zero;
public bool selecting = false;
/// <summary> /// <summary>
/// Are we currently drag selecting? /// Are we currently drag selecting?
/// </summary> /// </summary>
public bool ActivelySelecting = false; public bool ActivelySelecting { get; private set; } = false;
private bool clickedInTimeline = false; private Vector2 startPosition = Vector2.zero;
private Vector2 endPosition = Vector2.zero;
private bool validClick = false;
[SerializeField] private RectTransform boxVisual;
private CanvasGroup boxGroup;
private TMPro.TMP_Text sizeText; private TMPro.TMP_Text sizeText;
private RectTransform text;
private float timelineLastX;
public static BoxSelection instance { get; private set; } public static BoxSelection instance { get; private set; }
private void Awake()
{
instance = this;
}
private void Start() private void Start()
{ {
DrawVisual(); instance = this;
Color boxCol = EditorTheme.theme.properties.BoxSelectionCol.Hex2RGB(); Color boxCol = EditorTheme.theme.properties.BoxSelectionCol.Hex2RGB();
boxVisual.GetComponent<Image>().color = new Color(boxCol.r, boxCol.g, boxCol.b, 0.3f); boxVisual.GetChild(0).GetComponent<Image>().color = new Color(boxCol.r, boxCol.g, boxCol.b, 0.3f);
boxVisual.transform.GetChild(0).GetComponent<Image>().color = EditorTheme.theme.properties.BoxSelectionOutlineCol.Hex2RGB(); boxVisual.GetChild(0).GetChild(0).GetComponent<Image>().color = EditorTheme.theme.properties.BoxSelectionOutlineCol.Hex2RGB();
sizeText = boxVisual.transform.GetChild(1).GetComponent<TMPro.TMP_Text>(); sizeText = boxVisual.GetChild(0).GetChild(1).GetComponent<TMPro.TMP_Text>();
text = boxVisual.transform.GetChild(1).GetComponent<RectTransform>(); sizeText.text = string.Empty;
boxGroup = boxVisual.GetComponent<CanvasGroup>();
} }
private void Update() public void LayerSelectUpdate()
{ {
if (Editor.instance == null) return; if (Input.GetMouseButtonDown(0))
float deltaTimelineX = timelineContent.transform.localPosition.x - timelineLastX; {
if (!Timeline.instance.MouseInTimeline || TimelineBlockManager.Instance.InteractingWithEvents || Conductor.instance.NotStopped())
Camera camera = Editor.instance.EditorCamera;
Vector3 scale = Editor.instance.MainCanvas.transform.localScale;
boxVisual.transform.localScale = new Vector2((1f / Timeline.instance.TimelineContent.localScale.x) / scale.x, 1f / scale.y);
text.transform.localScale = scale;
if (Selections.instance.eventsSelected.Count > 0 && Timeline.instance.InteractingWithEvents())
{ {
startPosition = Vector2.zero;
endPosition = Vector2.zero;
DrawVisual();
return; return;
} }
if (Conductor.instance.NotStopped() || !Timeline.instance.timelineState.selected) validClick = true;
startPosition = new Vector2(Timeline.instance.MousePos2Beat, Timeline.instance.MousePos2Layer);
boxGroup.DOKill();
boxGroup.alpha = 1.0f;
}
if (!validClick) return;
var startPos = startPosition;
var endPos = endPosition;
if (Input.GetMouseButton(0))
{ {
startPosition = Vector2.zero; endPos = new Vector2(Timeline.instance.MousePos2Beat,
endPosition = Vector2.zero; Timeline.instance.MousePos2Layer +
DrawVisual(); (Timeline.instance.MousePos2Layer < startPosition.y ? 0 : 1));
startPos = new Vector2(startPos.x,
startPos.y + ((Timeline.instance.MousePos2Layer < startPosition.y) ? 1 : 0));
startPos = new Vector2(startPos.x, Mathf.Clamp(startPos.y, 0, Timeline.instance.LayerCount));
endPos = new Vector2(endPos.x, Mathf.Clamp(endPos.y, 0, Timeline.instance.LayerCount));
ActivelySelecting = true;
if (Conductor.instance.NotStopped())
{
validClick = false;
boxGroup.DOFade(0.0f, 0.3f).SetEase(Ease.OutExpo);
ActivelySelecting = false;
return;
}
}
var start = new Vector2(Mathf.Min(startPos.x, endPos.x),
Mathf.Min(startPos.y, endPos.y));
var end = new Vector2(Mathf.Max(startPos.x, endPos.x),
Mathf.Max(startPos.y, endPos.y));
if (Input.GetMouseButtonUp(0))
{
validClick = false;
boxGroup.DOFade(0.0f, 0.3f).SetEase(Ease.OutExpo);
ActivelySelecting = false;
return; return;
} }
float beatLen = boxVisual.rect.width * boxVisual.transform.localScale.x; boxVisual.anchoredPosition = new Vector2(start.x * Timeline.instance.PixelsPerBeat, Timeline.instance.LayerToY(Mathf.FloorToInt(start.y)));
if (beatLen >= 0.5f) boxVisual.sizeDelta = new Vector2((end.x - start.x) * Timeline.instance.PixelsPerBeat,
sizeText.text = $"{string.Format("{0:0.000}", beatLen)}"; (end.y - start.y) * Timeline.instance.LayerHeight());
var boxLength = end.x - start.x;
if (boxLength > 0.01f)
sizeText.text = (boxLength).ToString("F");
else else
sizeText.text = string.Empty; sizeText.text = string.Empty;
// click Select(start, end);
if (Input.GetMouseButtonDown(0))
{
clickedInTimeline = Timeline.instance.CheckIfMouseInTimeline();
startPosition = MousePosition();
selectionBox = new Rect();
ActivelySelecting = true;
} }
// dragging private void Select(Vector2 start, Vector2 end)
if (Input.GetMouseButton(0) && clickedInTimeline)
{ {
startPosition.x += deltaTimelineX * scale.x; var boxRect = new Rect(start.x, start.y, end.x - start.x, end.y - start.y);
endPosition = MousePosition();
DrawSelection();
SelectEvents(); //kek
DrawVisual();
}
// release click // This doesn't take into account blocks the user cannot see, this is intentional.
if (Input.GetMouseButtonUp(0)) foreach (var marker in TimelineBlockManager.Instance.EntityMarkers.Values)
{ {
startPosition = Vector2.zero; var markerRect = new Rect((float)marker.entity.beat, (int)marker.entity["track"], marker.entity.length, 1);
endPosition = Vector2.zero;
SelectEvents();
DrawVisual();
ActivelySelecting = false; var boxOverMarker = boxRect.Overlaps(markerRect);
} if (boxOverMarker)
timelineLastX = timelineContent.transform.localPosition.x;
}
private void DrawVisual()
{ {
Vector2 boxStart = startPosition; if (!marker.selected)
Vector2 boxEnd = endPosition; Selections.instance.DragSelect(marker);
Vector2 boxCenter = (boxStart + boxEnd) / 2;
boxVisual.position = boxCenter;
Vector2 boxSize = new Vector2(Mathf.Abs(boxStart.x - boxEnd.x), Mathf.Abs(boxStart.y - boxEnd.y));
boxVisual.SetSizeWithCurrentAnchors(RectTransform.Axis.Horizontal, boxSize.x);
boxVisual.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical, boxSize.y);
}
private void DrawSelection()
{
// X
if (MousePosition().x < startPosition.x)
{
// dragging left
selectionBox.xMin = MousePosition().x;
selectionBox.xMax = startPosition.x;
} }
else else
{ {
// dragging right if (marker.selected && !Input.GetKey(KeyCode.LeftShift))
selectionBox.xMin = startPosition.x; Selections.instance.Deselect(marker);
selectionBox.xMax = MousePosition().x; }
} }
// Y
if (MousePosition().y < startPosition.y)
{
// dragging down
selectionBox.yMin = MousePosition().y;
selectionBox.yMax = startPosition.y;
}
else
{
// dragging up
selectionBox.yMin = startPosition.y;
selectionBox.yMax = MousePosition().y;
}
}
private void SelectEvents()
{
if (!Input.GetKey(KeyCode.LeftShift) && !Timeline.instance.InteractingWithEvents() && Editor.instance.canSelect) Selections.instance.DeselectAll();
int selected = 0;
for (int i = 0; i < Timeline.instance.eventObjs.Count; i++)
{
TimelineEventObj e = Timeline.instance.eventObjs[i];
if (selectionBox.Overlaps(GetWorldRect(e.GetComponent<RectTransform>())))
{
Selections.instance.DragSelect(e);
selected++;
}
}
selecting = selected > 0;
}
public Vector3 MousePosition()
{
var mousePos = Editor.instance.EditorCamera.ScreenToWorldPoint(Input.mousePosition);
return new Vector3(mousePos.x, mousePos.y, 0);
}
public Rect GetWorldRect(RectTransform rectTransform)
{
Vector3[] corners = new Vector3[4];
rectTransform.GetWorldCorners(corners);
// Get the bottom left corner.
Vector3 position = corners[0];
Vector2 size = new Vector2(
rectTransform.lossyScale.x * rectTransform.rect.size.x,
rectTransform.lossyScale.y * rectTransform.rect.size.y);
return new Rect(position, size);
} }
} }
} }

View file

@ -1,210 +1,386 @@
using System.Collections; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using UnityEngine; using UnityEngine;
using Jukebox; using Jukebox;
using Jukebox.Legacy;
using HeavenStudio.Editor.Track; using HeavenStudio.Editor.Track;
using Newtonsoft.Json;
using UnityEditor;
using UnityEngine.Timeline;
namespace HeavenStudio.Editor.Commands namespace HeavenStudio.Editor.Commands
{ {
public class Selection : IAction public class Delete : ICommand
{ {
List<TimelineEventObj> eventObjs; private List<Guid> toDeleteIds;
List<TimelineEventObj> lastEventObjs; private List<RiqEntityMore> deletedEntities = new();
public Selection(List<TimelineEventObj> eventObjs) struct RiqEntityMore
{ {
this.eventObjs = eventObjs; public RiqEntity riqEntity;
public bool selected;
}
public Delete(List<Guid> ids)
{
toDeleteIds = ids;
} }
public void Execute() public void Execute()
{ {
for (var i = 0; i < toDeleteIds.Count; i++)
{
var entity = GameManager.instance.Beatmap.Entities.Find(c => c.guid == toDeleteIds[i]);
if (entity != null)
{
var marker = TimelineBlockManager.Instance.EntityMarkers[entity.guid];
var clonedEntity = entity.DeepCopy();
clonedEntity.guid = entity.guid; // We have to do this because entities (as of when I'm typing this), do not have Guids.
deletedEntities.Add(new() { riqEntity = clonedEntity, selected = marker.selected });
Selections.instance.Deselect(marker);
GameManager.instance.Beatmap.Entities.Remove(entity);
TimelineBlockManager.Instance.EntityMarkers.Remove(entity.guid);
GameObject.Destroy(marker.gameObject);
}
} }
public void Redo() GameManager.instance.SortEventsList();
{
for (int i = 0; i < lastEventObjs.Count; i++)
{
Selections.instance.ShiftClickSelect(lastEventObjs[i]);
}
} }
public void Undo() public void Undo()
{ {
lastEventObjs = eventObjs; for (var i = 0; i < deletedEntities.Count; i++)
for (int i = 0; i < eventObjs.Count; i++)
{ {
Selections.instance.ShiftClickSelect(eventObjs[i]); var deletedEntity = deletedEntities[i];
GameManager.instance.Beatmap.Entities.Add(deletedEntity.riqEntity);
var marker = TimelineBlockManager.Instance.CreateEntity(deletedEntity.riqEntity);
/*if (deletedEntities[i].selected)
Selections.instance.ShiftClickSelect(marker);*/
}
GameManager.instance.SortEventsList();
deletedEntities.Clear();
}
}
public class Place : ICommand
{
private RiqEntity placedEntityData;
private Guid placedEventID;
// Redo times basically
private int placeTimes = 0;
public Place(RiqEntity entity, Guid placedEventID)
{
this.placedEntityData = entity.DeepCopy();
this.placedEventID = placedEventID;
}
public void Execute()
{
if (placeTimes > 0)
{
var entity = placedEntityData.DeepCopy();
entity.guid = placedEventID;
GameManager.instance.Beatmap.Entities.Add(entity);
var marker = TimelineBlockManager.Instance.CreateEntity(entity);
GameManager.instance.SortEventsList();
}
placeTimes++;
}
public void Undo()
{
var createdEntity = GameManager.instance.Beatmap.Entities.Find(c => c.guid == placedEventID);
if (createdEntity != null)
{
placedEntityData = createdEntity.DeepCopy();
var marker = TimelineBlockManager.Instance.EntityMarkers[createdEntity.guid];
Selections.instance.Deselect(marker);
GameManager.instance.Beatmap.Entities.Remove(createdEntity);
TimelineBlockManager.Instance.EntityMarkers.Remove(createdEntity.guid);
GameObject.Destroy(marker.gameObject);
GameManager.instance.SortEventsList();
} }
} }
} }
// I spent 7 hours trying to fix this instead of sleeping, which would've probably worked better. public class Duplicate : ICommand
// I'll go fuck myself later I'm just glad it works
// I give massive props to people who code undo/redo systems
// -- Starpelly
public class Move : IAction
{ {
public List<Pos> pos = new List<Pos>(); public List<RiqEntity> dupEntityData = new();
private readonly List<Guid> placedEntityIDs = new();
public class Pos public Duplicate(List<TimelineEventObj> original)
{ {
public TimelineEventObj eventObj; var entities = original.Select(c => c.entity).ToList();
public Vector2 lastPos_; foreach (var entity in entities)
public Vector3 previousPos; {
dupEntityData.Add(entity.DeepCopy());
} }
public Move(List<TimelineEventObj> eventObjs) for (var i = 0; i < original.Count; i++)
{ {
pos.Clear(); placedEntityIDs.Add(Guid.NewGuid());
for (int i = 0; i < eventObjs.Count; i++)
{
Pos p = new Pos();
p.eventObj = eventObjs[i];
p.lastPos_ = eventObjs[i].moveStartPos;
p.previousPos = eventObjs[i].transform.localPosition;
this.pos.Add(p);
} }
} }
public void Execute() public void Execute()
{ {
var entities = new List<RiqEntity>();
foreach (var entity in dupEntityData)
{
entities.Add(entity.DeepCopy());
} }
public void Redo() Selections.instance.DeselectAll();
for (var i = 0; i < entities.Count; i++)
{ {
for (int i = 0; i < pos.Count; i++) var entity = entities[i];
{ entity.guid = placedEntityIDs[i];
EnsureEventObj(i);
pos[i].eventObj.transform.localPosition = pos[i].previousPos; GameManager.instance.Beatmap.Entities.Add(entity);
pos[i].eventObj.entity.beat = pos[i].eventObj.transform.localPosition.x; var marker = TimelineBlockManager.Instance.CreateEntity(entity);
Selections.instance.DragSelect(marker);
if (i == entities.Count - 1)
marker.BeginMoving(false);
} }
GameManager.instance.SortEventsList();
} }
public void Undo() public void Undo()
{ {
for (int i = 0; i < pos.Count; i++) var deletedEntities = new List<RiqEntity>();
for (var i = 0; i < placedEntityIDs.Count; i++)
{ {
EnsureEventObj(i); var placedEntityID = placedEntityIDs[i];
pos[i].eventObj.transform.localPosition = pos[i].lastPos_; var createdEntity = GameManager.instance.Beatmap.Entities.Find(c => c.guid == placedEntityID);
pos[i].eventObj.entity.beat = pos[i].eventObj.transform.localPosition.x;
} if (createdEntity != null)
{
deletedEntities.Add(createdEntity);
if (TimelineBlockManager.Instance.EntityMarkers.ContainsKey(placedEntityID))
{
var marker = TimelineBlockManager.Instance.EntityMarkers[placedEntityID];
Selections.instance.Deselect(marker);
TimelineBlockManager.Instance.EntityMarkers.Remove(placedEntityID);
GameObject.Destroy(marker.gameObject);
} }
private void EnsureEventObj(int id) GameManager.instance.Beatmap.Entities.Remove(createdEntity);
}
}
GameManager.instance.SortEventsList();
dupEntityData.Clear();
foreach (var entity in deletedEntities)
{ {
if (pos[id].eventObj == null) dupEntityData.Add(entity.DeepCopy());
{
pos[id].eventObj = Timeline.instance.eventObjs.Find(c => c.eventObjID == pos[id].eventObj.eventObjID);
} }
} }
} }
public class Place : IAction public class Paste : ICommand
{ {
TimelineEventObj eventObj; private List<RiqEntity> pasteEntityData = new();
TimelineEventObj deletedObj; private readonly List<Guid> entityIds = new();
public Place(TimelineEventObj eventObj) public Paste(List<RiqEntity> original)
{ {
this.eventObj = eventObj; original.Sort((x, y) => x.beat.CompareTo(y.beat));
var firstEntityBeat = original[0].beat;
for (var i = 0; i < original.Count; i++)
{
var entity = original[i].DeepCopy();
entity.beat = Conductor.instance.songPositionInBeatsAsDouble + (entity.beat - firstEntityBeat);
entityIds.Add(Guid.NewGuid());
pasteEntityData.Add(entity);
}
} }
public void Execute() public void Execute()
{ {
var entities = new List<RiqEntity>();
foreach (var entity in pasteEntityData)
{
entities.Add(entity.DeepCopy());
} }
public void Redo() Selections.instance.DeselectAll();
for (var i = 0; i < entities.Count; i++)
{ {
deletedObj = Timeline.instance.AddEventObject(deletedObj.entity.datamodel, false, new Vector3((float) deletedObj.entity.beat, -deletedObj.entity["track"] * Timeline.instance.LayerHeight()), deletedObj.entity, true); var entity = entities[i];
entity.guid = entityIds[i];
GameManager.instance.Beatmap.Entities.Add(entity);
var marker = TimelineBlockManager.Instance.CreateEntity(entity);
Selections.instance.DragSelect(marker);
}
GameManager.instance.SortEventsList();
} }
public void Undo() public void Undo()
{ {
deletedObj = eventObj; var deletedEntities = new List<RiqEntity>();
Selections.instance.Deselect(eventObj); for (var i = 0; i < entityIds.Count; i++)
Timeline.instance.DestroyEventObject(eventObj.entity); {
// RiqEntity e = deletedObjs[i].entity; var pastedEntityID = entityIds[i];
// Timeline.instance.AddEventObject(e.datamodel, false, new Vector3(e.beat, -e.track * Timeline.instance.LayerHeight()), e, true, e.eventObj.eventObjID); var pastedEntity = GameManager.instance.Beatmap.Entities.Find(c => c.guid == pastedEntityID);
if (pastedEntity != null)
{
deletedEntities.Add(pastedEntity);
if (TimelineBlockManager.Instance.EntityMarkers.ContainsKey(pastedEntityID))
{
var marker = TimelineBlockManager.Instance.EntityMarkers[pastedEntityID];
Selections.instance.Deselect(marker);
TimelineBlockManager.Instance.EntityMarkers.Remove(pastedEntityID);
GameObject.Destroy(marker.gameObject);
}
GameManager.instance.Beatmap.Entities.Remove(pastedEntity);
}
}
GameManager.instance.SortEventsList();
pasteEntityData.Clear();
foreach (var entity in deletedEntities)
{
pasteEntityData.Add(entity.DeepCopy());
}
} }
} }
public class Deletion : IAction public class Move : ICommand
{ {
List<TimelineEventObj> eventObjs; private readonly List<Guid> entityIDs = new();
List<TimelineEventObj> deletedObjs; private EntityMove newMove;
private EntityMove lastMove;
public Deletion(List<TimelineEventObj> eventObjs) private struct EntityMove
{ {
this.eventObjs = eventObjs; public List<double> beat;
public List<int> layer;
public EntityMove(List<double> beat, List<int> layer)
{
this.beat = beat;
this.layer = layer;
}
}
public Move(List<RiqEntity> originalEntities, List<double> newBeat, List<int> newLayer)
{
entityIDs = originalEntities.Select(c => c.guid).ToList();
newMove = new EntityMove(newBeat, newLayer);
} }
public void Execute() public void Execute()
{ {
deletedObjs = eventObjs; lastMove = new EntityMove();
for (int i = 0; i < eventObjs.Count; i++) lastMove.beat = new();
{ lastMove.layer = new();
Selections.instance.Deselect(eventObjs[i]);
Timeline.instance.DestroyEventObject(eventObjs[i].entity);
}
}
public void Redo() for (var i = 0; i < entityIDs.Count; i++)
{ {
deletedObjs = eventObjs; var entity = GameManager.instance.Beatmap.Entities.Find(c => c.guid == entityIDs[i]);
for (int i = 0; i < eventObjs.Count; i++)
{ lastMove.beat.Add(entity.beat);
Selections.instance.Deselect(eventObjs[i]); lastMove.layer.Add((int)entity["track"]);
Timeline.instance.DestroyEventObject(eventObjs[i].entity);
entity.beat = newMove.beat[i];
entity["track"] = newMove.layer[i];
if (TimelineBlockManager.Instance.EntityMarkers.ContainsKey(entity.guid))
TimelineBlockManager.Instance.EntityMarkers[entity.guid].SetColor((int)entity["track"]);
} }
} }
public void Undo() public void Undo()
{ {
for (int i = 0; i < deletedObjs.Count; i++) for (var i = 0; i < entityIDs.Count; i++)
{ {
RiqEntity e = deletedObjs[i].entity; var entity = GameManager.instance.Beatmap.Entities.Find(c => c.guid == entityIDs[i]);
eventObjs[i] = Timeline.instance.AddEventObject(e.datamodel, false, new Vector3((float)e.beat, -e["track"] * Timeline.instance.LayerHeight()), e, true);
entity.beat = lastMove.beat[i];
entity["track"] = lastMove.layer[i];
if (TimelineBlockManager.Instance.EntityMarkers.ContainsKey(entity.guid))
TimelineBlockManager.Instance.EntityMarkers[entity.guid].SetColor((int)entity["track"]);
} }
} }
} }
public class Duplicate : IAction public class Resize : ICommand
{ {
List<TimelineEventObj> eventObjs; public Guid entityId;
List<TimelineEventObj> copiedObjs; private EntityResize newResize;
private EntityResize lastResize;
public Duplicate(List<TimelineEventObj> eventObjs) public struct EntityResize
{ {
this.eventObjs = eventObjs; public double beat;
public float length;
public EntityResize(double beat, float length)
{
this.beat = beat;
this.length = length;
}
}
public Resize(Guid entityId, double newBeat, float newLength)
{
this.entityId = entityId;
newResize = new EntityResize(newBeat, newLength);
} }
public void Execute() public void Execute()
{ {
} var entity = GameManager.instance.Beatmap.Entities.Find(c => c.guid == entityId);
public void Redo() lastResize = new EntityResize(entity.beat, entity.length);
{
for (int i = 0; i < copiedObjs.Count; i++) entity.beat = newResize.beat;
{ entity.length = newResize.length;
RiqEntity e = copiedObjs[i].entity;
eventObjs[i] = Timeline.instance.AddEventObject(e.datamodel, false, new Vector3((float)e.beat, -e["track"] * Timeline.instance.LayerHeight()), e, true); if (TimelineBlockManager.Instance.EntityMarkers.ContainsKey(entityId))
} TimelineBlockManager.Instance.EntityMarkers[entityId].SetWidthHeight();
} }
public void Undo() public void Undo()
{ {
copiedObjs = eventObjs; var entity = GameManager.instance.Beatmap.Entities.Find(c => c.guid == entityId);
for (int i = 0; i < eventObjs.Count; i++)
{ entity.beat = lastResize.beat;
Selections.instance.Deselect(eventObjs[i]); entity.length = lastResize.length;
Timeline.instance.DestroyEventObject(eventObjs[i].entity);
} if (TimelineBlockManager.Instance.EntityMarkers.ContainsKey(entityId))
TimelineBlockManager.Instance.EntityMarkers[entityId].SetWidthHeight();
} }
} }
} }

View file

@ -8,37 +8,30 @@ namespace HeavenStudio.Editor
{ {
public class CommandManager : MonoBehaviour public class CommandManager : MonoBehaviour
{ {
private Stack<IAction> historyStack = new Stack<IAction>(); public static CommandManager Instance { get; private set; }
private Stack<IAction> redoHistoryStack = new Stack<IAction>();
int maxItems = 128; private Stack<ICommand> historyStack = new Stack<ICommand>();
private Stack<ICommand> redoHistoryStack = new Stack<ICommand>();
public bool canUndo() public int HistoryCount => historyStack.Count;
{
return historyStack.Count > 0;
}
public bool canRedo()
{
return redoHistoryStack.Count > 0;
}
public static CommandManager instance { get; private set; } private int maxItems = 128;
private void Awake() private void Awake()
{ {
instance = this; Instance = this;
} }
public void Execute(IAction action) public void AddCommand(ICommand command)
{ {
action.Execute(); command.Execute();
historyStack.Push(action); historyStack.Push(command);
redoHistoryStack.Clear(); redoHistoryStack.Clear();
} }
public void Undo() public void UndoCommand()
{ {
if (!canUndo() || Conductor.instance.NotStopped()) return; if (!CanUndo() || Conductor.instance.NotStopped()) return;
if (historyStack.Count > 0) if (historyStack.Count > 0)
{ {
@ -47,22 +40,14 @@ namespace HeavenStudio.Editor
} }
} }
public void Redo() public void RedoCommand()
{ {
if (!canRedo() || Conductor.instance.NotStopped()) return; if (!CanRedo() || Conductor.instance.NotStopped()) return;
if (redoHistoryStack.Count > 0) if (redoHistoryStack.Count > 0)
{ {
historyStack.Push(redoHistoryStack.Peek()); historyStack.Push(redoHistoryStack.Peek());
redoHistoryStack.Pop().Redo(); redoHistoryStack.Pop().Execute();
}
}
// this is here as to not hog up memory, "max undos" basically
private void EnsureCapacity()
{
if (maxItems > 0)
{
} }
} }
@ -71,5 +56,15 @@ namespace HeavenStudio.Editor
historyStack.Clear(); historyStack.Clear();
redoHistoryStack.Clear(); redoHistoryStack.Clear();
} }
public bool CanUndo()
{
return historyStack.Count > 0;
}
public bool CanRedo()
{
return redoHistoryStack.Count > 0;
}
} }
} }

View file

@ -1,13 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace HeavenStudio.Editor.Commands
{
public interface IAction
{
void Execute();
void Undo();
void Redo();
}
}

View file

@ -0,0 +1,8 @@
namespace HeavenStudio.Editor.Commands
{
public interface ICommand
{
void Execute();
void Undo();
}
}

View file

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: d6a4c5ae13e9de743befd392956aaea7 guid: 3e3bd3cc84702894b8dff6ecfc62e943
MonoImporter: MonoImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2

View file

@ -0,0 +1,238 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
using Jukebox;
using HeavenStudio.Editor.Track;
using Newtonsoft.Json;
using UnityEditor;
using UnityEngine.Timeline;
namespace HeavenStudio.Editor.Commands
{
public class AddMarker : ICommand
{
private RiqEntity placedEntityData;
private Guid placedEventID;
private int placedTimes = 0;
private SpecialTimeline.HoveringTypes type;
public AddMarker(RiqEntity placedEntityData, Guid placedEventID, SpecialTimeline.HoveringTypes type)
{
this.placedEntityData = placedEntityData.DeepCopy();
this.placedEventID = placedEventID;
this.type = type;
}
public void Execute()
{
if (placedTimes > 0)
{
var entity = placedEntityData.DeepCopy();
entity.guid = placedEventID;
switch (type)
{
case SpecialTimeline.HoveringTypes.TempoChange:
GameManager.instance.Beatmap.TempoChanges.Add(entity);
SpecialTimeline.instance.AddTempoChange(false, entity);
break;
case SpecialTimeline.HoveringTypes.VolumeChange:
GameManager.instance.Beatmap.VolumeChanges.Add(entity);
SpecialTimeline.instance.AddVolumeChange(false, entity);
break;
case SpecialTimeline.HoveringTypes.SectionChange:
GameManager.instance.Beatmap.SectionMarkers.Add(entity);
SpecialTimeline.instance.AddChartSection(false, entity);
break;
}
GameManager.instance.SortEventsList();
}
placedTimes++;
}
public void Undo()
{
RiqEntity createdEntity = null;
switch (type)
{
case SpecialTimeline.HoveringTypes.TempoChange:
createdEntity = GameManager.instance.Beatmap.TempoChanges.Find(x => x.guid == placedEventID);
break;
case SpecialTimeline.HoveringTypes.VolumeChange:
createdEntity = GameManager.instance.Beatmap.VolumeChanges.Find(x => x.guid == placedEventID);
break;
case SpecialTimeline.HoveringTypes.SectionChange:
createdEntity = GameManager.instance.Beatmap.SectionMarkers.Find(x => x.guid == placedEventID);
break;
}
if (createdEntity != null)
{
placedEntityData = createdEntity.DeepCopy();
var marker = SpecialTimeline.instance.specialTimelineObjs[createdEntity.guid];
switch (type)
{
case SpecialTimeline.HoveringTypes.TempoChange:
GameManager.instance.Beatmap.TempoChanges.Remove(createdEntity);
break;
case SpecialTimeline.HoveringTypes.VolumeChange:
GameManager.instance.Beatmap.VolumeChanges.Remove(createdEntity);
break;
case SpecialTimeline.HoveringTypes.SectionChange:
GameManager.instance.Beatmap.SectionMarkers.Remove(createdEntity);
break;
}
SpecialTimeline.instance.specialTimelineObjs.Remove(createdEntity.guid);
GameObject.Destroy(marker.gameObject);
GameManager.instance.SortEventsList();
}
}
}
public class DeleteMarker : ICommand
{
private RiqEntity deletedEntityData;
private Guid deletedEventID;
private SpecialTimeline.HoveringTypes type;
public DeleteMarker(Guid deletedEventID, SpecialTimeline.HoveringTypes type)
{
this.deletedEventID = deletedEventID;
this.type = type;
}
public void Execute()
{
RiqEntity deletedEntity = null;
switch (type)
{
case SpecialTimeline.HoveringTypes.TempoChange:
deletedEntity = GameManager.instance.Beatmap.TempoChanges.Find(x => x.guid == deletedEventID);
break;
case SpecialTimeline.HoveringTypes.VolumeChange:
deletedEntity = GameManager.instance.Beatmap.VolumeChanges.Find(x => x.guid == deletedEventID);
break;
case SpecialTimeline.HoveringTypes.SectionChange:
deletedEntity = GameManager.instance.Beatmap.SectionMarkers.Find(x => x.guid == deletedEventID);
break;
}
if (deletedEntity != null)
{
var marker = SpecialTimeline.instance.specialTimelineObjs[deletedEntity.guid];
deletedEntityData = deletedEntity.DeepCopy();
deletedEntityData.guid = deletedEntity.guid;
switch (type)
{
case SpecialTimeline.HoveringTypes.TempoChange:
GameManager.instance.Beatmap.TempoChanges.Remove(deletedEntity);
break;
case SpecialTimeline.HoveringTypes.VolumeChange:
GameManager.instance.Beatmap.VolumeChanges.Remove(deletedEntity);
break;
case SpecialTimeline.HoveringTypes.SectionChange:
GameManager.instance.Beatmap.SectionMarkers.Remove(deletedEntity);
break;
}
SpecialTimeline.instance.specialTimelineObjs.Remove(deletedEntity.guid);
GameObject.Destroy(marker.gameObject);
GameManager.instance.SortEventsList();
}
}
public void Undo()
{
if (deletedEntityData != null)
{
switch (type)
{
case SpecialTimeline.HoveringTypes.TempoChange:
GameManager.instance.Beatmap.TempoChanges.Add(deletedEntityData);
SpecialTimeline.instance.AddTempoChange(false, deletedEntityData);
break;
case SpecialTimeline.HoveringTypes.VolumeChange:
GameManager.instance.Beatmap.VolumeChanges.Add(deletedEntityData);
SpecialTimeline.instance.AddVolumeChange(false, deletedEntityData);
break;
case SpecialTimeline.HoveringTypes.SectionChange:
GameManager.instance.Beatmap.SectionMarkers.Add(deletedEntityData);
SpecialTimeline.instance.AddChartSection(false, deletedEntityData);
break;
}
deletedEntityData = null;
}
}
}
public class MoveMarker : ICommand
{
private Guid entityId;
private double newBeat, lastBeat;
private SpecialTimeline.HoveringTypes type;
public MoveMarker(Guid entityId, double newBeat, SpecialTimeline.HoveringTypes type)
{
this.entityId = entityId;
this.newBeat = newBeat;
this.type = type;
}
public void Execute()
{
RiqEntity movedEntity = null;
switch (type)
{
case SpecialTimeline.HoveringTypes.TempoChange:
movedEntity = GameManager.instance.Beatmap.TempoChanges.Find(x => x.guid == entityId);
break;
case SpecialTimeline.HoveringTypes.VolumeChange:
movedEntity = GameManager.instance.Beatmap.VolumeChanges.Find(x => x.guid == entityId);
break;
case SpecialTimeline.HoveringTypes.SectionChange:
movedEntity = GameManager.instance.Beatmap.SectionMarkers.Find(x => x.guid == entityId);
break;
}
if (movedEntity != null)
{
lastBeat = movedEntity.beat;
movedEntity.beat = newBeat;
}
}
public void Undo()
{
RiqEntity movedEntity = null;
switch (type)
{
case SpecialTimeline.HoveringTypes.TempoChange:
movedEntity = GameManager.instance.Beatmap.TempoChanges.Find(x => x.guid == entityId);
break;
case SpecialTimeline.HoveringTypes.VolumeChange:
movedEntity = GameManager.instance.Beatmap.VolumeChanges.Find(x => x.guid == entityId);
break;
case SpecialTimeline.HoveringTypes.SectionChange:
movedEntity = GameManager.instance.Beatmap.SectionMarkers.Find(x => x.guid == entityId);
break;
}
if (movedEntity != null)
{
movedEntity.beat = lastBeat;
}
}
}
}

View file

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 64b35e3b4d623144a82ed956ee52a136 guid: 7052872845575e443816f75abb8e7e49
MonoImporter: MonoImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2

View file

@ -4,7 +4,7 @@ using UnityEngine;
using HeavenStudio.Editor.Commands; using HeavenStudio.Editor.Commands;
public class TestCommand : IAction public class TestCommand : ICommand
{ {
private GameObject prefab; private GameObject prefab;
private Vector3 pos; private Vector3 pos;

View file

@ -1,27 +1,20 @@
using System; using System;
using System.IO; using System.IO;
using System.Collections; using System.Collections;
using System.Collections.Generic;
using System.Threading.Tasks; using System.Threading.Tasks;
using UnityEngine; using UnityEngine;
using UnityEngine.UI; using UnityEngine.UI;
using UnityEngine.Networking;
using Newtonsoft.Json;
using TMPro; using TMPro;
using Starpelly;
using SFB; using SFB;
using HeavenStudio.Common; using HeavenStudio.Common;
using HeavenStudio.Editor.Track; using HeavenStudio.Editor.Track;
using HeavenStudio.Util;
using HeavenStudio.StudioDance; using HeavenStudio.StudioDance;
using Jukebox; using Jukebox;
using UnityEditor;
using System.IO.Compression; using System.Linq;
using System.Text;
namespace HeavenStudio.Editor namespace HeavenStudio.Editor
{ {
@ -50,6 +43,8 @@ namespace HeavenStudio.Editor
[SerializeField] private Button SaveBTN; [SerializeField] private Button SaveBTN;
[SerializeField] private Button UndoBTN; [SerializeField] private Button UndoBTN;
[SerializeField] private Button RedoBTN; [SerializeField] private Button RedoBTN;
[SerializeField] private Button CopyBTN;
[SerializeField] private Button PasteBTN;
[SerializeField] private Button MusicSelectBTN; [SerializeField] private Button MusicSelectBTN;
[SerializeField] private Button FullScreenBTN; [SerializeField] private Button FullScreenBTN;
[SerializeField] private Button TempoFinderBTN; [SerializeField] private Button TempoFinderBTN;
@ -63,6 +58,8 @@ namespace HeavenStudio.Editor
[SerializeField] private Button EditorThemeBTN; [SerializeField] private Button EditorThemeBTN;
[SerializeField] private Button EditorSettingsBTN; [SerializeField] private Button EditorSettingsBTN;
[SerializeField] private GameObject DebugHolder;
[Header("Dialogs")] [Header("Dialogs")]
[SerializeField] private Dialog[] Dialogs; [SerializeField] private Dialog[] Dialogs;
@ -84,6 +81,8 @@ namespace HeavenStudio.Editor
public bool isShortcutsEnabled { get { return (!inAuthorativeMenu) && (!editingInputField); } } public bool isShortcutsEnabled { get { return (!inAuthorativeMenu) && (!editingInputField); } }
private Vector2 lastScreenSize = Vector2.zero;
public static Editor instance { get; private set; } public static Editor instance { get; private set; }
private void Start() private void Start()
@ -110,6 +109,8 @@ namespace HeavenStudio.Editor
Tooltip.AddTooltip(SaveBTN.gameObject, "Save Project <color=#adadad>[Ctrl+S]</color>\nSave Project As <color=#adadad>[Ctrl+Alt+S]</color>"); Tooltip.AddTooltip(SaveBTN.gameObject, "Save Project <color=#adadad>[Ctrl+S]</color>\nSave Project As <color=#adadad>[Ctrl+Alt+S]</color>");
Tooltip.AddTooltip(UndoBTN.gameObject, "Undo <color=#adadad>[Ctrl+Z]</color>"); Tooltip.AddTooltip(UndoBTN.gameObject, "Undo <color=#adadad>[Ctrl+Z]</color>");
Tooltip.AddTooltip(RedoBTN.gameObject, "Redo <color=#adadad>[Ctrl+Y or Ctrl+Shift+Z]</color>"); Tooltip.AddTooltip(RedoBTN.gameObject, "Redo <color=#adadad>[Ctrl+Y or Ctrl+Shift+Z]</color>");
Tooltip.AddTooltip(CopyBTN.gameObject, "Copy <color=#adadad>[Ctrl+C]</color>");
Tooltip.AddTooltip(PasteBTN.gameObject, "Paste <color=#adadad>[Ctrl+V]</color>");
Tooltip.AddTooltip(MusicSelectBTN.gameObject, "Music Select"); Tooltip.AddTooltip(MusicSelectBTN.gameObject, "Music Select");
Tooltip.AddTooltip(FullScreenBTN.gameObject, "Preview <color=#adadad>[Tab]</color>"); Tooltip.AddTooltip(FullScreenBTN.gameObject, "Preview <color=#adadad>[Tab]</color>");
Tooltip.AddTooltip(TempoFinderBTN.gameObject, "Tempo Finder"); Tooltip.AddTooltip(TempoFinderBTN.gameObject, "Tempo Finder");
@ -145,6 +146,12 @@ namespace HeavenStudio.Editor
public void LateUpdate() public void LateUpdate()
{ {
if (lastScreenSize != new Vector2(UnityEngine.Screen.width, UnityEngine.Screen.height))
{
// Timeline.OnScreenResize();
}
lastScreenSize = new Vector2(UnityEngine.Screen.width, UnityEngine.Screen.height);
#region Keyboard Shortcuts #region Keyboard Shortcuts
if (isShortcutsEnabled) if (isShortcutsEnabled)
{ {
@ -155,9 +162,7 @@ namespace HeavenStudio.Editor
if (Input.GetKeyDown(KeyCode.Delete) || Input.GetKeyDown(KeyCode.Backspace)) if (Input.GetKeyDown(KeyCode.Delete) || Input.GetKeyDown(KeyCode.Backspace))
{ {
List<TimelineEventObj> ev = new List<TimelineEventObj>(); CommandManager.Instance.AddCommand(new Commands.Delete(Selections.instance.eventsSelected.Select(c => c.entity.guid).ToList()));
for (int i = 0; i < Selections.instance.eventsSelected.Count; i++) ev.Add(Selections.instance.eventsSelected[i]);
CommandManager.instance.Execute(new Commands.Deletion(ev));
} }
if (Input.GetKey(KeyCode.LeftControl)) if (Input.GetKey(KeyCode.LeftControl))
@ -165,13 +170,21 @@ namespace HeavenStudio.Editor
if (Input.GetKeyDown(KeyCode.Z)) if (Input.GetKeyDown(KeyCode.Z))
{ {
if (Input.GetKey(KeyCode.LeftShift)) if (Input.GetKey(KeyCode.LeftShift))
CommandManager.instance.Redo(); CommandManager.Instance.RedoCommand();
else else
CommandManager.instance.Undo(); CommandManager.Instance.UndoCommand();
} }
else if (Input.GetKeyDown(KeyCode.Y)) else if (Input.GetKeyDown(KeyCode.Y))
{ {
CommandManager.instance.Redo(); CommandManager.Instance.RedoCommand();
}
else if (Input.GetKeyDown(KeyCode.C))
{
Timeline.instance.CopySelected();
}
else if (Input.GetKeyDown(KeyCode.V))
{
Timeline.instance.Paste();
} }
if (Input.GetKey(KeyCode.LeftShift)) if (Input.GetKey(KeyCode.LeftShift))
@ -205,21 +218,38 @@ namespace HeavenStudio.Editor
SaveRemix(false); SaveRemix(false);
} }
} }
if (Input.GetKeyDown(KeyCode.F12))
{
DebugHolder.gameObject.SetActive(!DebugHolder.activeInHierarchy);
}
} }
#endregion #endregion
if (CommandManager.instance.canUndo()) // Undo+Redo
if (CommandManager.Instance.CanUndo())
UndoBTN.transform.GetChild(0).GetComponent<Image>().color = Color.white; UndoBTN.transform.GetChild(0).GetComponent<Image>().color = Color.white;
else else
UndoBTN.transform.GetChild(0).GetComponent<Image>().color = Color.gray; UndoBTN.transform.GetChild(0).GetComponent<Image>().color = Color.gray;
if (CommandManager.Instance.CanRedo())
if (CommandManager.instance.canRedo())
RedoBTN.transform.GetChild(0).GetComponent<Image>().color = Color.white; RedoBTN.transform.GetChild(0).GetComponent<Image>().color = Color.white;
else else
RedoBTN.transform.GetChild(0).GetComponent<Image>().color = Color.gray; RedoBTN.transform.GetChild(0).GetComponent<Image>().color = Color.gray;
// Copy+Paste
if (Selections.instance.eventsSelected.Count > 0)
CopyBTN.transform.GetChild(0).GetComponent<Image>().color = Color.white;
else
CopyBTN.transform.GetChild(0).GetComponent<Image>().color = Color.gray;
if (Timeline.instance.CopiedEntities.Count > 0)
PasteBTN.transform.GetChild(0).GetComponent<Image>().color = Color.white;
else
PasteBTN.transform.GetChild(0).GetComponent<Image>().color = Color.gray;
if (Timeline.instance.timelineState.selected && Editor.instance.canSelect) if (Timeline.instance.timelineState.selected && Editor.instance.canSelect)
{ {
/*
if (Input.GetMouseButtonUp(0)) if (Input.GetMouseButtonUp(0))
{ {
List<TimelineEventObj> selectedEvents = Timeline.instance.eventObjs.FindAll(c => c.selected == true && c.eligibleToMove == true); List<TimelineEventObj> selectedEvents = Timeline.instance.eventObjs.FindAll(c => c.selected == true && c.eligibleToMove == true);
@ -240,6 +270,7 @@ namespace HeavenStudio.Editor
CommandManager.instance.Execute(new Commands.Move(result)); CommandManager.instance.Execute(new Commands.Move(result));
} }
} }
*/
} }
} }
@ -357,6 +388,7 @@ namespace HeavenStudio.Editor
{ {
try try
{ {
RiqFileHandler.UnlockCache();
RiqFileHandler.WriteRiq(GameManager.instance.Beatmap); RiqFileHandler.WriteRiq(GameManager.instance.Beatmap);
RiqFileHandler.PackRiq(path, true); RiqFileHandler.PackRiq(path, true);
Debug.Log("Packed RIQ successfully!"); Debug.Log("Packed RIQ successfully!");
@ -407,6 +439,7 @@ namespace HeavenStudio.Editor
try try
{ {
RiqFileHandler.UnlockCache();
string tmpDir = RiqFileHandler.ExtractRiq(path); string tmpDir = RiqFileHandler.ExtractRiq(path);
Debug.Log("Imported RIQ successfully!"); Debug.Log("Imported RIQ successfully!");
LoadRemix(); LoadRemix();
@ -424,7 +457,7 @@ namespace HeavenStudio.Editor
currentRemixPath = path; currentRemixPath = path;
remixName = Path.GetFileName(path); remixName = Path.GetFileName(path);
UpdateEditorStatus(false); UpdateEditorStatus(false);
CommandManager.instance.Clear(); CommandManager.Instance.Clear();
}); });
} }

View file

@ -28,16 +28,39 @@ namespace HeavenStudio.Editor
private void Awake() private void Awake()
{ {
var defaultTheme = JsonConvert.DeserializeObject<Theme>(ThemeTXT.text);
if (File.Exists(Application.persistentDataPath + "/editorTheme.json")) if (File.Exists(Application.persistentDataPath + "/editorTheme.json"))
{ {
string json = File.ReadAllText(Application.persistentDataPath + "/editorTheme.json"); string json = File.ReadAllText(Application.persistentDataPath + "/editorTheme.json");
theme = JsonConvert.DeserializeObject<Theme>(json); theme = JsonConvert.DeserializeObject<Theme>(json);
// Naive way of doing it? Possibly, but we should have a theme editor in the future.
if (defaultTheme.properties.LayerColors != null)
{
theme.properties.LayerColors = new string[]
{
theme.properties.Layer1Col,
theme.properties.Layer2Col,
theme.properties.Layer3Col,
theme.properties.Layer4Col,
theme.properties.Layer5Col
};
// Create a function for this in the future.
var savedTheme = JsonConvert.SerializeObject(theme, Formatting.Indented, new JsonSerializerSettings()
{
TypeNameHandling = TypeNameHandling.None,
NullValueHandling = NullValueHandling.Include,
ReferenceLoopHandling = ReferenceLoopHandling.Ignore,
});
PersistentDataManager.SaveTheme(savedTheme);
}
} }
else else
{ {
PersistentDataManager.SaveTheme(ThemeTXT.text); PersistentDataManager.SaveTheme(ThemeTXT.text);
theme = JsonConvert.DeserializeObject<Theme>(ThemeTXT.text); theme = defaultTheme;
} }
theme.SetLayersGradient();
} }
private void Start() private void Start()
@ -61,30 +84,12 @@ namespace HeavenStudio.Editor
layer.SetActive(true); layer.SetActive(true);
layer.transform.GetChild(0).GetComponent<TMP_Text>().text = $"Track {i + 1}"; layer.transform.GetChild(0).GetComponent<TMP_Text>().text = $"Track {i + 1}";
Color c = Color.white; Color c = theme.LayersGradient.Evaluate(i / (float)(Timeline.instance.LayerCount - 1));
switch (i)
{
case 0:
c = theme.properties.Layer1Col.Hex2RGB();
break;
case 1:
c = theme.properties.Layer2Col.Hex2RGB();
break;
case 2:
c = theme.properties.Layer3Col.Hex2RGB();
break;
case 3:
c = theme.properties.Layer4Col.Hex2RGB();
break;
case 4:
c = theme.properties.Layer5Col.Hex2RGB();
break;
}
layer.GetComponent<Image>().color = c; layer.GetComponent<Image>().color = c;
Tooltip.AddTooltip(layer, $"Track {i + 1}"); Tooltip.AddTooltip(layer, $"Track {i + 1}");
} }
Destroy(layer); Destroy(layer);
} }
} }

View file

@ -89,8 +89,8 @@ namespace HeavenStudio.Editor
eventSelector.SetActive(false); eventSelector.SetActive(false);
this.entity = entity; this.entity = entity;
string col = TrackToThemeColour(entity["track"]); string col = TrackToThemeColour((int)entity["track"]);
Editor.instance.SetGameEventTitle($"Properties for <color=#{col}>{action.displayName}</color> on Beat {entity.beat}"); Editor.instance.SetGameEventTitle($"Properties for <color=#{col}>{action.displayName}</color> on Beat {entity.beat.ToString("F2")} on <color=#{col}>Track {(int)entity["track"] + 1}</color>");
DestroyParams(); DestroyParams();
@ -194,7 +194,7 @@ namespace HeavenStudio.Editor
GameObject input = Instantiate(prefab); GameObject input = Instantiate(prefab);
input.transform.SetParent(this.gameObject.transform); input.transform.SetParent(this.gameObject.transform);
input.SetActive(true); input.SetActive(true);
input.transform.localScale = Vector2.one; input.transform.localScale = Vector3.one;
if(tooltip != string.Empty) if(tooltip != string.Empty)
Tooltip.AddTooltip(input, "", tooltip); Tooltip.AddTooltip(input, "", tooltip);

View file

@ -10,9 +10,11 @@ using DG.Tweening;
using Starpelly; using Starpelly;
using HeavenStudio.Editor.Track; using HeavenStudio.Editor.Track;
using System.Text;
namespace HeavenStudio.Editor namespace HeavenStudio.Editor
{ {
// I hate the antichrist.
public class GridGameSelector : MonoBehaviour public class GridGameSelector : MonoBehaviour
{ {
public Minigames.Minigame SelectedMinigame; public Minigames.Minigame SelectedMinigame;
@ -39,6 +41,7 @@ namespace HeavenStudio.Editor
private bool gameOpen; private bool gameOpen;
private float selectorHeight; private float selectorHeight;
private float eventSize; private float eventSize;
private float timeSinceUpdateIndex = 0.0f;
public static GridGameSelector instance; public static GridGameSelector instance;
@ -93,6 +96,7 @@ namespace HeavenStudio.Editor
currentEventIndex = 0; currentEventIndex = 0;
CurrentSelected.transform.DOLocalMoveY(eventsParent.transform.GetChild(currentEventIndex).localPosition.y + eventsParent.transform.localPosition.y, 0.35f).SetEase(Ease.OutExpo); CurrentSelected.transform.DOLocalMoveY(eventsParent.transform.GetChild(currentEventIndex).localPosition.y + eventsParent.transform.localPosition.y, 0.35f).SetEase(Ease.OutExpo);
timeSinceUpdateIndex = 0;
} }
private void UpdateScrollPosition() private void UpdateScrollPosition()
@ -115,6 +119,13 @@ namespace HeavenStudio.Editor
Mathf.Lerp(lastPos.y, end, 12 * Time.deltaTime), Mathf.Lerp(lastPos.y, end, 12 * Time.deltaTime),
lastPos.z lastPos.z
); );
timeSinceUpdateIndex += Time.deltaTime;
CurrentSelected.GetComponent<RectTransform>().anchoredPosition =
new Vector2(
(Mathf.Cos(timeSinceUpdateIndex * 2.65f) * 12) + 12,
CurrentSelected.GetComponent<RectTransform>().anchoredPosition.y);
SetColors(); SetColors();
} }
@ -156,21 +167,31 @@ namespace HeavenStudio.Editor
if (!EventCaller.FXOnlyGames().Contains(SelectedMinigame)) if (!EventCaller.FXOnlyGames().Contains(SelectedMinigame))
{ {
GameObject sg = Instantiate(EventRef, eventsParent); GameObject sg = Instantiate(EventRef, eventsParent);
sg.GetComponent<TMP_Text>().text = "Switch Game"; sg.GetComponentInChildren<TMP_Text>().text = "Switch Game";
sg.SetActive(true); sg.SetActive(true);
if (index == 0) sg.GetComponent<TMP_Text>().color = EditorTheme.theme.properties.EventSelectedCol.Hex2RGB(); if (index == 0) sg.GetComponentInChildren<TMP_Text>().color = EditorTheme.theme.properties.EventSelectedCol.Hex2RGB();
} else { } else {
index++; index++;
if (SelectedMinigame.name == "gameManager") index++; if (SelectedMinigame.name == "gameManager") index++;
} }
for (int i = 0; i < SelectedMinigame.actions.Count; i++) for (var i = 0; i < SelectedMinigame.actions.Count; i++)
{ {
if (SelectedMinigame.actions[i].actionName == "switchGame" || SelectedMinigame.actions[i].hidden) continue; var action = SelectedMinigame.actions[i];
GameObject g = Instantiate(EventRef, eventsParent); if (action.actionName == "switchGame" || action.hidden) continue;
g.GetComponent<TMP_Text>().text = SelectedMinigame.actions[i].displayName;
var g = Instantiate(EventRef, eventsParent);
var label = g.GetComponentInChildren<TMP_Text>();
label.text = action.displayName;
if (action.parameters != null && action.parameters.Count > 0)
g.transform.GetChild(1).gameObject.SetActive(true);
if (index - 1 == i)
label.color = EditorTheme.theme.properties.EventSelectedCol.Hex2RGB();
g.SetActive(true); g.SetActive(true);
if (index - 1 == i) g.GetComponent<TMP_Text>().color = EditorTheme.theme.properties.EventSelectedCol.Hex2RGB();
} }
} }
@ -192,9 +213,23 @@ namespace HeavenStudio.Editor
//CurrentSelected.GetComponent<Image>().color = EditorTheme.theme.properties.EventSelectedCol.Hex2RGB(); //CurrentSelected.GetComponent<Image>().color = EditorTheme.theme.properties.EventSelectedCol.Hex2RGB();
for (int i = 0; i < eventsParent.transform.childCount; i++) for (int i = 0; i < eventsParent.transform.childCount; i++)
eventsParent.GetChild(i).GetComponent<TMP_Text>().color = EditorTheme.theme.properties.EventNormalCol.Hex2RGB(); {
var eventTxt = eventsParent.GetChild(i).GetChild(0).GetComponent<TMP_Text>();
eventsParent.GetChild(currentEventIndex).GetComponent<TMP_Text>().color = EditorTheme.theme.properties.EventSelectedCol.Hex2RGB(); var goalX = -25;
if (i == currentEventIndex)
{
eventTxt.color = EditorTheme.theme.properties.EventSelectedCol.Hex2RGB();
goalX = 16;
}
else
{
eventTxt.color = EditorTheme.theme.properties.EventNormalCol.Hex2RGB();
}
eventTxt.rectTransform.anchoredPosition =
new Vector2(
Mathf.Lerp(eventTxt.rectTransform.anchoredPosition.x, goalX, Time.deltaTime * 12f),
eventTxt.rectTransform.anchoredPosition.y);
}
} }
// TODO: find the equation to get the sizes automatically, nobody's been able to figure one out yet (might have to be manual?) // TODO: find the equation to get the sizes automatically, nobody's been able to figure one out yet (might have to be manual?)
@ -353,7 +388,7 @@ namespace HeavenStudio.Editor
{ {
if (Conductor.instance.NotStopped() || Editor.instance.inAuthorativeMenu) return; if (Conductor.instance.NotStopped() || Editor.instance.inAuthorativeMenu) return;
if (Timeline.instance.CheckIfMouseInTimeline() && dragTimes < 1) if (Timeline.instance.MouseInTimeline && dragTimes < 1)
{ {
Timeline.instance.timelineState.SetState(Timeline.CurrentTimelineState.State.Selection); Timeline.instance.timelineState.SetState(Timeline.CurrentTimelineState.State.Selection);
dragTimes++; dragTimes++;

View file

@ -19,6 +19,8 @@ namespace HeavenStudio.Editor
public TMP_Dropdown dropdown; public TMP_Dropdown dropdown;
private Array enumVals; private Array enumVals;
private bool openedDropdown = false;
new public void SetProperties(string propertyName, object type, string caption) new public void SetProperties(string propertyName, object type, string caption)
{ {
InitProperties(propertyName, caption); InitProperties(propertyName, caption);
@ -51,6 +53,24 @@ namespace HeavenStudio.Editor
private void Update() private void Update()
{ {
var scrollbar = GetComponentInChildren<ScrollRect>()?.verticalScrollbar;
// This is bad but we'll fix it later.
if (scrollbar != null)
{
if (openedDropdown == false)
{
openedDropdown = true;
var valuePos = (float)dropdown.value / (dropdown.options.Count - 1);
var scrollVal = scrollbar.direction == Scrollbar.Direction.TopToBottom ? valuePos : 1.0f - valuePos;
scrollbar.value = Mathf.Max(0.001f, scrollVal);
}
}
else
{
openedDropdown = false;
}
} }
} }
} }

View file

@ -28,7 +28,7 @@ namespace HeavenStudio.Editor
colorPreview.colorPicker.onColorChanged += _ => colorPreview.colorPicker.onColorChanged += _ =>
parameterManager.chart[propertyName] = colorPreview.colorPicker.color; parameterManager.chart[propertyName] = colorPreview.colorPicker.color;
Color paramCol = parameterManager.chart[propertyName]; Color paramCol = (Color)parameterManager.chart[propertyName];
ColorBTN.onClick.AddListener( ColorBTN.onClick.AddListener(
() => () =>

View file

@ -20,12 +20,15 @@ namespace HeavenStudio.Editor
private void Update() private void Update()
{ {
// Should never happen to begin with.
/*
var buggedSelections = eventsSelected.FindAll(c => c == null); var buggedSelections = eventsSelected.FindAll(c => c == null);
if (buggedSelections.Count > 0) if (buggedSelections.Count > 0)
{ {
for (int i = 0; i < buggedSelections.Count; i++) for (int i = 0; i < buggedSelections.Count; i++)
Deselect(buggedSelections[i]); Deselect(buggedSelections[i]);
} }
*/
if (Editor.instance.isShortcutsEnabled) if (Editor.instance.isShortcutsEnabled)
{ {
if (Input.GetKey(KeyCode.LeftControl)) if (Input.GetKey(KeyCode.LeftControl))
@ -38,6 +41,10 @@ namespace HeavenStudio.Editor
{ {
DeselectAll(); DeselectAll();
eventsSelected.Add(eventToAdd); eventsSelected.Add(eventToAdd);
eventToAdd.selected = true;
eventToAdd.OnSelect();
TimelineBlockManager.Instance.SortMarkers();
// CommandManager.instance.Execute(new Commands.Selection(new List<TimelineEventObj>() { eventToAdd } )); // CommandManager.instance.Execute(new Commands.Selection(new List<TimelineEventObj>() { eventToAdd } ));
} }
@ -46,41 +53,66 @@ namespace HeavenStudio.Editor
{ {
if (!eventsSelected.Contains(eventToAdd)) if (!eventsSelected.Contains(eventToAdd))
{ {
eventToAdd.selected = true;
eventToAdd.OnSelect();
eventsSelected.Add(eventToAdd); eventsSelected.Add(eventToAdd);
} }
else else
{ {
eventToAdd.selected = false;
eventToAdd.OnDeselect();
eventsSelected.Remove(eventToAdd); eventsSelected.Remove(eventToAdd);
} }
TimelineBlockManager.Instance.SortMarkers();
} }
public void DragSelect(TimelineEventObj eventToAdd) public void DragSelect(TimelineEventObj eventToAdd)
{ {
if (!eventsSelected.Contains(eventToAdd)) if (!eventsSelected.Contains(eventToAdd))
{ {
eventToAdd.selected = true;
eventsSelected.Add(eventToAdd); eventsSelected.Add(eventToAdd);
eventToAdd.OnSelect();
} }
} }
public void SelectAll() public void SelectAll()
{ {
return;
/*
DeselectAll(); DeselectAll();
var eventObjs = Timeline.instance.eventObjs; var eventObjs = Timeline.instance.eventObjs;
for (int i = 0; i < eventObjs.Count; i++) for (int i = 0; i < eventObjs.Count; i++)
{
eventObjs[i].selected = true;
eventObjs[i].OnSelect();
eventsSelected.Add(eventObjs[i]); eventsSelected.Add(eventObjs[i]);
} }
TimelineBlockManager.Instance.SortMarkers();
*/
}
public void DeselectAll() public void DeselectAll()
{ {
foreach (var @event in eventsSelected)
{
@event.selected = false;
@event.OnSelect();
}
eventsSelected.Clear(); eventsSelected.Clear();
TimelineBlockManager.Instance.SortMarkers();
} }
public void Deselect(TimelineEventObj eventToDeselect) public void Deselect(TimelineEventObj eventToDeselect)
{ {
if (eventsSelected.Contains(eventToDeselect)) if (eventsSelected.Contains(eventToDeselect))
{ {
eventToDeselect.selected = false;
eventToDeselect.OnDeselect();
eventsSelected.Remove(eventToDeselect); eventsSelected.Remove(eventToDeselect);
} }
TimelineBlockManager.Instance.SortMarkers();
} }
} }
} }

View file

@ -1,4 +1,7 @@
using Newtonsoft.Json;
using Starpelly;
using System; using System;
using System.Collections.Generic;
using UnityEngine; using UnityEngine;
namespace HeavenStudio.Editor namespace HeavenStudio.Editor
@ -23,6 +26,8 @@ namespace HeavenStudio.Editor
public string Layer4Col; public string Layer4Col;
public string Layer5Col; public string Layer5Col;
public string[] LayerColors = null;
public string EventSelectedCol; public string EventSelectedCol;
public string EventNormalCol; public string EventNormalCol;
@ -32,5 +37,23 @@ namespace HeavenStudio.Editor
public string BoxSelectionCol; public string BoxSelectionCol;
public string BoxSelectionOutlineCol; public string BoxSelectionOutlineCol;
} }
[JsonIgnore]
public Gradient LayersGradient { get; private set; }
public void SetLayersGradient()
{
if (properties.LayerColors == null) return;
LayersGradient = new Gradient();
var colorKeys = new List<GradientColorKey>();
for (var i = 0; i < properties.LayerColors.Length; i++)
{
var color = properties.LayerColors[i];
colorKeys.Add(new GradientColorKey(color.Hex2RGB(), (float)i / (properties.LayerColors.Length - 1)));
}
LayersGradient.colorKeys = colorKeys.ToArray();
}
} }
} }

View file

@ -1,32 +0,0 @@
using UnityEngine;
using UnityEngine.UI;
namespace HeavenStudio.Editor.Track
{
public class KeepSizeRelativeToContent : MonoBehaviour
{
private RectTransform rectTransform;
public float sizeDeltaXInternal;
public float sizeDeltaX = 1.0f;
public float multiply;
private void Start()
{
rectTransform = GetComponent<RectTransform>();
SetScale(Timeline.instance.TimelineContent.localScale.x);
}
private void LateUpdate()
{
SetScale(Timeline.instance.TimelineContent.localScale.x);
}
private void SetScale(float scale)
{
rectTransform.localScale = new Vector3((1.0f / scale) * multiply, transform.localScale.y, 1);
LayoutRebuilder.ForceRebuildLayoutImmediate(rectTransform);
}
}
}

View file

@ -30,8 +30,8 @@ public class SectionDialog : Dialog
public void SetSectionObj(SectionTimelineObj sectionObj) public void SetSectionObj(SectionTimelineObj sectionObj)
{ {
this.sectionObj = sectionObj; this.sectionObj = sectionObj;
sectionName.text = sectionObj.chartSection["sectionName"]; sectionName.text = sectionObj.chartEntity["sectionName"];
challengeEnable.isOn = sectionObj.chartSection["startPerfect"]; challengeEnable.isOn = sectionObj.chartEntity["startPerfect"];
} }
public void DeleteSection() public void DeleteSection()
@ -41,20 +41,19 @@ public class SectionDialog : Dialog
Editor.instance.inAuthorativeMenu = false; Editor.instance.inAuthorativeMenu = false;
} }
if (sectionObj == null) return; if (sectionObj == null) return;
GameManager.instance.Beatmap.SectionMarkers.Remove(sectionObj.chartSection);
sectionObj.DeleteObj(); sectionObj.DeleteObj();
} }
public void ChangeSectionName(string name) public void ChangeSectionName(string name)
{ {
if (sectionObj == null) return; if (sectionObj == null) return;
sectionObj.chartSection["sectionName"] = name; sectionObj.chartEntity["sectionName"] = name;
sectionObj.UpdateLabel(); sectionObj.UpdateLabel();
} }
public void SetSectionChallenge() public void SetSectionChallenge()
{ {
if (sectionObj == null) return; if (sectionObj == null) return;
sectionObj.chartSection["startPerfect"] = challengeEnable.isOn; sectionObj.chartEntity["startPerfect"] = challengeEnable.isOn;
} }
} }

View file

@ -21,7 +21,7 @@ namespace HeavenStudio.Editor.Track
[Header("Components")] [Header("Components")]
private RectTransform rectTransform; private RectTransform rectTransform;
public List<SpecialTimelineObj> specialTimelineObjs = new List<SpecialTimelineObj>(); public Dictionary<Guid, SpecialTimelineObj> specialTimelineObjs = new();
[System.Flags] [System.Flags]
public enum HoveringTypes public enum HoveringTypes
@ -110,7 +110,7 @@ namespace HeavenStudio.Editor.Track
public void FixObjectsVisibility() public void FixObjectsVisibility()
{ {
foreach (SpecialTimelineObj obj in specialTimelineObjs) foreach (SpecialTimelineObj obj in specialTimelineObjs.Values)
{ {
obj.SetVisibility(Timeline.instance.timelineState.currentState); obj.SetVisibility(Timeline.instance.timelineState.currentState);
} }
@ -118,7 +118,7 @@ namespace HeavenStudio.Editor.Track
public void ClearSpecialTimeline() public void ClearSpecialTimeline()
{ {
foreach (SpecialTimelineObj obj in specialTimelineObjs) foreach (SpecialTimelineObj obj in specialTimelineObjs.Values)
{ {
Destroy(obj.gameObject); Destroy(obj.gameObject);
} }
@ -127,6 +127,15 @@ namespace HeavenStudio.Editor.Track
public void AddTempoChange(bool create, RiqEntity tempoChange_ = null, bool first = false) public void AddTempoChange(bool create, RiqEntity tempoChange_ = null, bool first = false)
{ {
if (create)
{
foreach (var e in GameManager.instance.Beatmap.TempoChanges)
{
if (Timeline.instance.MousePos2BeatSnap > e.beat - Timeline.instance.snapInterval && Timeline.instance.MousePos2BeatSnap < e.beat + Timeline.instance.snapInterval)
return;
}
}
GameObject tempoChange = Instantiate(RefTempoChange.gameObject, this.transform); GameObject tempoChange = Instantiate(RefTempoChange.gameObject, this.transform);
tempoChange.transform.GetChild(0).GetComponent<Image>().color = EditorTheme.theme.properties.TempoLayerCol.Hex2RGB(); tempoChange.transform.GetChild(0).GetComponent<Image>().color = EditorTheme.theme.properties.TempoLayerCol.Hex2RGB();
@ -136,39 +145,46 @@ namespace HeavenStudio.Editor.Track
tempoChange.SetActive(true); tempoChange.SetActive(true);
TempoTimelineObj tempoTimelineObj = tempoChange.GetComponent<TempoTimelineObj>(); TempoTimelineObj tempoTimelineObj = tempoChange.GetComponent<TempoTimelineObj>();
tempoTimelineObj.type = HoveringTypes.TempoChange;
if (create == true) if (create)
{ {
tempoChange.transform.position = new Vector3(Editor.instance.EditorCamera.ScreenToWorldPoint(Input.mousePosition).x + 0.08f, tempoChange.transform.position.y);
tempoChange.transform.localPosition = new Vector3(Starpelly.Mathp.Round2Nearest(tempoChange.transform.localPosition.x, Timeline.SnapInterval()), tempoChange.transform.localPosition.y);
float lastTempo = Conductor.instance.GetBpmAtBeat(tempoChange.transform.localPosition.x); float lastTempo = Conductor.instance.GetBpmAtBeat(tempoChange.transform.localPosition.x);
if (Input.GetKey(KeyCode.LeftShift) || Input.GetKey(KeyCode.RightShift)) if (Input.GetKey(KeyCode.LeftShift) || Input.GetKey(KeyCode.RightShift))
{ {
lastTempo = lastTempo * 2f; lastTempo *= 2f;
} }
else if (Input.GetKey(KeyCode.LeftControl) || Input.GetKey(KeyCode.RightControl)) else if (Input.GetKey(KeyCode.LeftControl) || Input.GetKey(KeyCode.RightControl))
{ {
lastTempo = lastTempo / 2f; lastTempo /= 2f;
} }
RiqEntity tempoC = GameManager.instance.Beatmap.AddNewTempoChange(tempoChange.transform.localPosition.x, lastTempo); RiqEntity tempoC = GameManager.instance.Beatmap.AddNewTempoChange(Timeline.instance.MousePos2BeatSnap, lastTempo);
tempoTimelineObj.tempoChange = tempoC; tempoTimelineObj.chartEntity = tempoC;
CommandManager.Instance.AddCommand(new Commands.AddMarker(tempoC, tempoC.guid, HoveringTypes.TempoChange));
} }
else else
{ {
tempoTimelineObj.tempoChange = tempoChange_; tempoTimelineObj.chartEntity = tempoChange_;
tempoChange.transform.localPosition = new Vector3((float) tempoTimelineObj.tempoChange.beat, tempoChange.transform.localPosition.y);
tempoTimelineObj.first = first; tempoTimelineObj.first = first;
} }
tempoTimelineObj.SetVisibility(Timeline.instance.timelineState.currentState); tempoTimelineObj.SetVisibility(Timeline.instance.timelineState.currentState);
specialTimelineObjs.Add(tempoTimelineObj); specialTimelineObjs.Add(tempoTimelineObj.chartEntity.guid, tempoTimelineObj);
Timeline.instance.FitToSong(); Timeline.instance.FitToSong();
} }
public void AddVolumeChange(bool create, RiqEntity volumeChange_ = null, bool first = false) public void AddVolumeChange(bool create, RiqEntity volumeChange_ = null, bool first = false)
{ {
if (create)
{
foreach (var e in GameManager.instance.Beatmap.VolumeChanges)
{
if (Timeline.instance.MousePos2BeatSnap > e.beat - Timeline.instance.snapInterval && Timeline.instance.MousePos2BeatSnap < e.beat + Timeline.instance.snapInterval)
return;
}
}
GameObject volumeChange = Instantiate(RefVolumeChange.gameObject, this.transform); GameObject volumeChange = Instantiate(RefVolumeChange.gameObject, this.transform);
volumeChange.transform.GetChild(0).GetComponent<Image>().color = EditorTheme.theme.properties.MusicLayerCol.Hex2RGB(); volumeChange.transform.GetChild(0).GetComponent<Image>().color = EditorTheme.theme.properties.MusicLayerCol.Hex2RGB();
@ -178,29 +194,36 @@ namespace HeavenStudio.Editor.Track
volumeChange.SetActive(true); volumeChange.SetActive(true);
VolumeTimelineObj volumeTimelineObj = volumeChange.GetComponent<VolumeTimelineObj>(); VolumeTimelineObj volumeTimelineObj = volumeChange.GetComponent<VolumeTimelineObj>();
volumeTimelineObj.type = HoveringTypes.VolumeChange;
if (create == true) if (create)
{ {
volumeChange.transform.position = new Vector3(Editor.instance.EditorCamera.ScreenToWorldPoint(Input.mousePosition).x + 0.08f, volumeChange.transform.position.y); RiqEntity volumeC = GameManager.instance.Beatmap.AddNewVolumeChange(Timeline.instance.MousePos2BeatSnap, 100f);
volumeChange.transform.localPosition = new Vector3(Starpelly.Mathp.Round2Nearest(volumeChange.transform.localPosition.x, Timeline.SnapInterval()), volumeChange.transform.localPosition.y); volumeTimelineObj.chartEntity = volumeC;
RiqEntity volumeC = GameManager.instance.Beatmap.AddNewVolumeChange(volumeChange.transform.localPosition.x, 100f);
volumeTimelineObj.volumeChange = volumeC;
GameManager.instance.Beatmap.VolumeChanges.Add(volumeC); GameManager.instance.Beatmap.VolumeChanges.Add(volumeC);
CommandManager.Instance.AddCommand(new Commands.AddMarker(volumeC, volumeC.guid, HoveringTypes.VolumeChange));
} }
else else
{ {
volumeTimelineObj.volumeChange = volumeChange_; volumeTimelineObj.chartEntity = volumeChange_;
volumeChange.transform.localPosition = new Vector3((float) volumeTimelineObj.volumeChange.beat, volumeChange.transform.localPosition.y);
volumeTimelineObj.first = first; volumeTimelineObj.first = first;
} }
volumeTimelineObj.SetVisibility(Timeline.instance.timelineState.currentState); volumeTimelineObj.SetVisibility(Timeline.instance.timelineState.currentState);
specialTimelineObjs.Add(volumeTimelineObj); specialTimelineObjs.Add(volumeTimelineObj.chartEntity.guid, volumeTimelineObj);
} }
public void AddChartSection(bool create, RiqEntity chartSection_ = null) public void AddChartSection(bool create, RiqEntity chartSection_ = null)
{ {
if (create)
{
foreach (var e in GameManager.instance.Beatmap.SectionMarkers)
{
if (Timeline.instance.MousePos2BeatSnap > e.beat - Timeline.instance.snapInterval && Timeline.instance.MousePos2BeatSnap < e.beat + Timeline.instance.snapInterval)
return;
}
}
GameObject chartSection = Instantiate(RefSectionChange.gameObject, this.transform); GameObject chartSection = Instantiate(RefSectionChange.gameObject, this.transform);
chartSection.transform.GetChild(0).GetComponent<Image>().color = EditorTheme.theme.properties.SectionLayerCol.Hex2RGB(); chartSection.transform.GetChild(0).GetComponent<Image>().color = EditorTheme.theme.properties.SectionLayerCol.Hex2RGB();
@ -211,32 +234,26 @@ namespace HeavenStudio.Editor.Track
chartSection.SetActive(true); chartSection.SetActive(true);
SectionTimelineObj sectionTimelineObj = chartSection.GetComponent<SectionTimelineObj>(); SectionTimelineObj sectionTimelineObj = chartSection.GetComponent<SectionTimelineObj>();
sectionTimelineObj.type = HoveringTypes.SectionChange;
if (create == true) if (create)
{ {
chartSection.transform.position = new Vector3(Editor.instance.EditorCamera.ScreenToWorldPoint(Input.mousePosition).x + 0.08f, chartSection.transform.position.y); RiqEntity sectionC = GameManager.instance.Beatmap.AddNewSectionMarker(Timeline.instance.MousePos2BeatSnap, "New Section");
chartSection.transform.localPosition = new Vector3(Starpelly.Mathp.Round2Nearest(chartSection.transform.localPosition.x, Timeline.SnapInterval()), chartSection.transform.localPosition.y);
RiqEntity sectionC = GameManager.instance.Beatmap.AddNewSectionMarker(chartSection.transform.localPosition.x, "New Section"); sectionTimelineObj.chartEntity = sectionC;
sectionTimelineObj.chartSection = sectionC;
GameManager.instance.Beatmap.SectionMarkers.Add(sectionC); GameManager.instance.Beatmap.SectionMarkers.Add(sectionC);
CommandManager.Instance.AddCommand(new Commands.AddMarker(sectionC, sectionC.guid, HoveringTypes.SectionChange));
} }
else else
{ {
sectionTimelineObj.chartSection = chartSection_; sectionTimelineObj.chartEntity = chartSection_;
chartSection.transform.localPosition = new Vector3((float) sectionTimelineObj.chartSection.beat, chartSection.transform.localPosition.y);
} }
sectionTimelineObj.SetVisibility(Timeline.instance.timelineState.currentState); sectionTimelineObj.SetVisibility(Timeline.instance.timelineState.currentState);
specialTimelineObjs.Add(sectionTimelineObj); specialTimelineObjs.Add(sectionTimelineObj.chartEntity.guid, sectionTimelineObj);
//auto-open the dialog //auto-open the dialog
if (create)
sectionTimelineObj.OnRightClick(); sectionTimelineObj.OnRightClick();
} }
public bool InteractingWithEvents()
{
return specialTimelineObjs.FindAll(c => c.hovering == true).Count > 0 || specialTimelineObjs.FindAll(c => c.moving == true).Count > 0;
}
} }
} }

View file

@ -16,8 +16,6 @@ namespace HeavenStudio.Editor.Track
[SerializeField] private GameObject chartLine; [SerializeField] private GameObject chartLine;
[SerializeField] private SectionDialog sectionDialog; [SerializeField] private SectionDialog sectionDialog;
public RiqEntity chartSection;
new private void Update() new private void Update()
{ {
base.Update(); base.Update();
@ -31,7 +29,9 @@ namespace HeavenStudio.Editor.Track
public void UpdateLabel() public void UpdateLabel()
{ {
sectionLabel.text = chartSection["sectionName"]; sectionLabel.text = chartEntity["sectionName"];
if (!moving)
SetX(chartEntity);
} }
public override void Init() public override void Init()
@ -54,16 +54,19 @@ namespace HeavenStudio.Editor.Track
} }
} }
public override bool OnMove(float beat) public override bool OnMove(float beat, bool final = false)
{ {
foreach (RiqEntity sectionChange in GameManager.instance.Beatmap.SectionMarkers) foreach (RiqEntity sectionChange in GameManager.instance.Beatmap.SectionMarkers)
{ {
if (this.chartSection == sectionChange) if (this.chartEntity == sectionChange)
continue; continue;
if (beat > sectionChange.beat - Timeline.instance.snapInterval && beat < sectionChange.beat + Timeline.instance.snapInterval) if (beat > sectionChange.beat - Timeline.instance.snapInterval && beat < sectionChange.beat + Timeline.instance.snapInterval)
return false; return false;
} }
this.chartSection.beat = beat; if (final)
CommandManager.Instance.AddCommand(new Commands.MoveMarker(chartEntity.guid, beat, type));
else
SetX(beat);
return true; return true;
} }

View file

@ -5,6 +5,7 @@ using UnityEngine;
using TMPro; using TMPro;
using DG.Tweening; using DG.Tweening;
using Jukebox;
namespace HeavenStudio.Editor.Track namespace HeavenStudio.Editor.Track
{ {
@ -17,10 +18,13 @@ namespace HeavenStudio.Editor.Track
private float startPosX; private float startPosX;
private float lastPosX; private float lastPosX;
public SpecialTimeline.HoveringTypes type;
public bool moving = false; public bool moving = false;
public bool hovering; public bool hovering;
public bool first = false; public bool first = false;
public RiqEntity chartEntity;
private void Start() private void Start()
{ {
rectTransform = GetComponent<RectTransform>(); rectTransform = GetComponent<RectTransform>();
@ -49,23 +53,22 @@ namespace HeavenStudio.Editor.Track
if (moving) if (moving)
{ {
Vector3 mousePos = Editor.instance.EditorCamera.ScreenToWorldPoint(Input.mousePosition); OnMove(Timeline.instance.MousePos2BeatSnap);
transform.position = new Vector3(mousePos.x - startPosX, transform.position.y, 0);
transform.localPosition = new Vector3(Mathf.Clamp(Starpelly.Mathp.Round2Nearest(transform.localPosition.x, Timeline.SnapInterval()), 0, Mathf.Infinity), transform.localPosition.y);
if (Input.GetMouseButtonUp(0)) if (Input.GetMouseButtonUp(0))
{ {
if (!OnMove(transform.localPosition.x)) /*if (!OnMove(transform.localPosition.x))
transform.localPosition = new Vector3(lastPosX, transform.localPosition.y); transform.localPosition = new Vector3(lastPosX, transform.localPosition.y);*/
moving = false; moving = false;
OnMove(Timeline.instance.MousePos2BeatSnap, true);
lastPosX = transform.localPosition.x; lastPosX = transform.localPosition.x;
} }
} }
} }
else else
{ {
/*
if (moving) if (moving)
{ {
if (!OnMove(transform.localPosition.x)) if (!OnMove(transform.localPosition.x))
@ -73,10 +76,21 @@ namespace HeavenStudio.Editor.Track
moving = false; moving = false;
lastPosX = transform.localPosition.x; lastPosX = transform.localPosition.x;
} }
*/
hovering = false; hovering = false;
} }
} }
public void SetX(RiqEntity entity)
{
rectTransform.anchoredPosition = new Vector2((float)entity.beat * Timeline.instance.PixelsPerBeat, rectTransform.anchoredPosition.y);
}
public void SetX(float beat)
{
rectTransform.anchoredPosition = new Vector2(beat * Timeline.instance.PixelsPerBeat, rectTransform.anchoredPosition.y);
}
public void StartMove() public void StartMove()
{ {
if (first) return; if (first) return;
@ -89,15 +103,16 @@ namespace HeavenStudio.Editor.Track
public void DeleteObj() public void DeleteObj()
{ {
if (first) return; if (first) return;
transform.parent.GetComponent<SpecialTimeline>().specialTimelineObjs.Remove(this); CommandManager.Instance.AddCommand(new Commands.DeleteMarker(chartEntity.guid, type));
Destroy(this.gameObject); // transform.parent.GetComponent<SpecialTimeline>().specialTimelineObjs.Remove(this);
// Destroy(this.gameObject);
} }
//events //events
public virtual void Init() { } public virtual void Init() { }
public virtual void OnLeftClick() { } public virtual void OnLeftClick() { }
public virtual void OnRightClick() { } public virtual void OnRightClick() { }
public virtual bool OnMove(float beat) public virtual bool OnMove(float beat, bool final = false)
{ {
return true; return true;
} }

View file

@ -16,8 +16,6 @@ namespace HeavenStudio.Editor.Track
[SerializeField] private TMP_Text tempoTXT; [SerializeField] private TMP_Text tempoTXT;
[SerializeField] private GameObject tempoLine; [SerializeField] private GameObject tempoLine;
public RiqEntity tempoChange;
new private void Update() new private void Update()
{ {
base.Update(); base.Update();
@ -31,16 +29,18 @@ namespace HeavenStudio.Editor.Track
if (Input.GetKey(KeyCode.LeftShift)) if (Input.GetKey(KeyCode.LeftShift))
newTempo *= 5f; newTempo *= 5f;
if (Input.GetKey(KeyCode.LeftControl)) if (Input.GetKey(KeyCode.LeftControl))
newTempo /= 100f; newTempo *= 0.01f;
tempoChange["tempo"] += newTempo; chartEntity["tempo"] += newTempo;
//make sure tempo is positive //make sure tempo is positive
if (tempoChange["tempo"] < 1) if (chartEntity["tempo"] < 1)
tempoChange["tempo"] = 1; chartEntity["tempo"] = 1;
if (first && newTempo != 0) if (first && newTempo != 0)
Timeline.instance.UpdateStartingBPMText(); Timeline.instance.UpdateStartingBPMText();
Timeline.instance.FitToSong();
} }
} }
@ -49,8 +49,9 @@ namespace HeavenStudio.Editor.Track
private void UpdateTempo() private void UpdateTempo()
{ {
tempoTXT.text = $"{tempoChange["tempo"]} BPM"; tempoTXT.text = chartEntity["tempo"].ToString("F") + $" BPM";
Timeline.instance.FitToSong(); if (!moving)
SetX(chartEntity);
} }
public override void Init() public override void Init()
@ -69,21 +70,23 @@ namespace HeavenStudio.Editor.Track
if (first) return; if (first) return;
if (Timeline.instance.timelineState.currentState == Timeline.CurrentTimelineState.State.TempoChange) if (Timeline.instance.timelineState.currentState == Timeline.CurrentTimelineState.State.TempoChange)
{ {
GameManager.instance.Beatmap.TempoChanges.Remove(tempoChange);
DeleteObj(); DeleteObj();
} }
} }
public override bool OnMove(float beat) public override bool OnMove(float beat, bool final = false)
{ {
foreach (var tempoChange in GameManager.instance.Beatmap.TempoChanges) foreach (var tempoChange in GameManager.instance.Beatmap.TempoChanges)
{ {
if (this.tempoChange == tempoChange) if (this.chartEntity == tempoChange)
continue; continue;
if (beat > tempoChange.beat - Timeline.instance.snapInterval && beat < tempoChange.beat + Timeline.instance.snapInterval) if (beat > tempoChange.beat - Timeline.instance.snapInterval && beat < tempoChange.beat + Timeline.instance.snapInterval)
return false; return false;
} }
this.tempoChange.beat = beat; if (final)
CommandManager.Instance.AddCommand(new Commands.MoveMarker(chartEntity.guid, beat, type));
else
SetX(beat);
return true; return true;
} }

View file

@ -16,8 +16,6 @@ namespace HeavenStudio.Editor.Track
[SerializeField] private TMP_Text volumeTXT; [SerializeField] private TMP_Text volumeTXT;
[SerializeField] private GameObject volumeLine; [SerializeField] private GameObject volumeLine;
public RiqEntity volumeChange;
new private void Update() new private void Update()
{ {
base.Update(); base.Update();
@ -31,12 +29,12 @@ namespace HeavenStudio.Editor.Track
if (Input.GetKey(KeyCode.LeftShift)) if (Input.GetKey(KeyCode.LeftShift))
newVolume *= 5f; newVolume *= 5f;
if (Input.GetKey(KeyCode.LeftControl)) if (Input.GetKey(KeyCode.LeftControl))
newVolume /= 100f; newVolume *= 0.01f;
volumeChange["volume"] += newVolume; chartEntity["volume"] += newVolume;
//make sure volume is positive //make sure volume is positive
volumeChange["volume"] = Mathf.Clamp(volumeChange["volume"], 0, 100); chartEntity["volume"] = Mathf.Clamp(chartEntity["volume"], 0, 100);
if (first && newVolume != 0) if (first && newVolume != 0)
Timeline.instance.UpdateStartingVolText(); Timeline.instance.UpdateStartingVolText();
@ -47,7 +45,9 @@ namespace HeavenStudio.Editor.Track
private void UpdateVolume() private void UpdateVolume()
{ {
volumeTXT.text = $"{volumeChange["volume"]}%"; volumeTXT.text = $"{chartEntity["volume"].ToString("F")}%";
if (!moving)
SetX(chartEntity);
} }
public override void Init() public override void Init()
@ -66,21 +66,23 @@ namespace HeavenStudio.Editor.Track
if (first) return; if (first) return;
if (Timeline.instance.timelineState.currentState == Timeline.CurrentTimelineState.State.MusicVolume) if (Timeline.instance.timelineState.currentState == Timeline.CurrentTimelineState.State.MusicVolume)
{ {
GameManager.instance.Beatmap.VolumeChanges.Remove(volumeChange);
DeleteObj(); DeleteObj();
} }
} }
public override bool OnMove(float beat) public override bool OnMove(float beat, bool final = false)
{ {
foreach (var volumeChange in GameManager.instance.Beatmap.VolumeChanges) foreach (var volumeChange in GameManager.instance.Beatmap.VolumeChanges)
{ {
if (this.volumeChange == volumeChange) if (this.chartEntity == volumeChange)
continue; continue;
if (beat > volumeChange.beat - Timeline.instance.snapInterval && beat < volumeChange.beat + Timeline.instance.snapInterval) if (beat > volumeChange.beat - Timeline.instance.snapInterval && beat < volumeChange.beat + Timeline.instance.snapInterval)
return false; return false;
} }
this.volumeChange.beat = beat; if (final)
CommandManager.Instance.AddCommand(new Commands.MoveMarker(chartEntity.guid, beat, type));
else
SetX(beat);
return true; return true;
} }

View file

@ -8,7 +8,8 @@ using UnityEngine.EventSystems;
using TMPro; using TMPro;
using Starpelly; using Starpelly;
using Jukebox; using Jukebox;
using Jukebox.Legacy; using Newtonsoft.Json;
using System.Linq;
namespace HeavenStudio.Editor.Track namespace HeavenStudio.Editor.Track
{ {
@ -20,9 +21,6 @@ namespace HeavenStudio.Editor.Track
[SerializeField] private TMP_Text CurrentTempo; [SerializeField] private TMP_Text CurrentTempo;
[Header("Timeline Properties")] [Header("Timeline Properties")]
private float lastBeatPos = 0;
private Vector2 lastMousePos;
public List<TimelineEventObj> eventObjs = new List<TimelineEventObj>();
private bool lastFrameDrag; private bool lastFrameDrag;
public int LayerCount = 5; public int LayerCount = 5;
public bool metronomeEnabled; public bool metronomeEnabled;
@ -33,8 +31,22 @@ namespace HeavenStudio.Editor.Track
[Header("Components")] [Header("Components")]
[SerializeField] private RawImage waveform; [SerializeField] private RawImage waveform;
[SerializeField] private Image layerBG;
[SerializeField] private TimelineZoom zoomComponent;
public Texture2D resizeCursor; public Texture2D resizeCursor;
public float WidthPerBeat { get; private set; } = 100.0f;
public float PixelsPerBeat => WidthPerBeat * Zoom;
public float Zoom { get; private set; } = 1.0f;
public float MousePos2Beat { get; private set; }
public float MousePos2Layer { get; private set; }
public float MousePos2BeatSnap => Mathp.Round2Nearest(MousePos2Beat + (SnapInterval() * 0.5f), SnapInterval());
public bool MouseInTimeline { get; private set; }
private Vector2 relativeMousePos;
public Vector2 RelativeMousePos => relativeMousePos;
public float PlaybackBeat = 0.0f;
public static float SnapInterval() { return instance.snapInterval; } public static float SnapInterval() { return instance.snapInterval; }
public void SetSnap(float snap) { snapInterval = snap; } public void SetSnap(float snap) { snapInterval = snap; }
@ -123,16 +135,24 @@ namespace HeavenStudio.Editor.Track
} }
} }
[Header("Panels")]
[SerializeField] private RectTransform TopPanel;
[SerializeField] private RectTransform TopPanelContent;
[SerializeField] private RectTransform ContentPanel;
[SerializeField] private RectTransform OverlayPanel, OverlayPanelContent;
[Header("Timeline Components")] [Header("Timeline Components")]
[SerializeField] private RectTransform TimelineSlider; [SerializeField] private RectTransform TimelineSlider;
[SerializeField] private RectTransform TimelineGridSelect; [SerializeField] private RectTransform TimelineGridSelect;
[SerializeField] private RectTransform TimelineEventGrid; [SerializeField] private RectTransform TimelineEventGrid;
[SerializeField] private TMP_Text TimelinePlaybackBeat; [SerializeField] private TMP_Text TimelinePlaybackBeat;
public ScrollRect TimelineScroll; public ScrollRect TimelineScroll;
public RectTransform TimelineContent; [SerializeField] private RectTransform RealTimelineContent;
[SerializeField] private ZoomComponent zoomComponent; [SerializeField] private RectTransform TimelineContent;
public RectTransform EventContent;
[SerializeField] private RectTransform TimelineSongPosLineRef; [SerializeField] private RectTransform TimelineSongPosLineRef;
[SerializeField] private RectTransform TimelineEventObjRef; [SerializeField] private RectTransform TimelineEventObjRef;
public RectTransform TimelineEventsHolder;
[SerializeField] private RectTransform LayersRect; [SerializeField] private RectTransform LayersRect;
[Header("Timeline Inputs")] [Header("Timeline Inputs")]
@ -162,11 +182,16 @@ namespace HeavenStudio.Editor.Track
public Vector3[] LayerCorners = new Vector3[4]; public Vector3[] LayerCorners = new Vector3[4];
public float leftSide => (TimelineContent.localPosition.x / TimelineContent.localScale.x) * -1; public float leftSide => (RealTimelineContent.anchoredPosition.x / PixelsPerBeat) * -1;
public float rightSide => (TimelineScroll.viewport.rect.width / TimelineContent.localScale.x) + leftSide; public float rightSide => (TimelineScroll.viewport.rect.width / PixelsPerBeat) + leftSide;
private Vector2 lastScreenSize;
public static Timeline instance { get; private set; } public static Timeline instance { get; private set; }
[HideInInspector]
public List<RiqEntity> CopiedEntities = new();
public bool userIsEditingInputField public bool userIsEditingInputField
{ {
get get
@ -180,19 +205,16 @@ namespace HeavenStudio.Editor.Track
public void LoadRemix() public void LoadRemix()
{ {
// beatmap entities /*
for (int i = 0; i < eventObjs.Count; i++)
{
Destroy(eventObjs[i].gameObject);
}
eventObjs.Clear();
for (int i = 0; i < GameManager.instance.Beatmap.Entities.Count; i++) for (int i = 0; i < GameManager.instance.Beatmap.Entities.Count; i++)
{ {
var e = GameManager.instance.Beatmap.Entities[i]; var e = GameManager.instance.Beatmap.Entities[i];
AddEventObject(e.datamodel, false, new Vector3((float)e.beat, -e["track"] * LayerHeight()), e, false); AddEventObject(e.datamodel, false, new Vector3((float)e.beat, -e["track"] * LayerHeight()), e, false);
} }
*/
TimelineBlockManager.Instance.Load();
SpecialInfo.Setup(); SpecialInfo.Setup();
UpdateOffsetText(); UpdateOffsetText();
@ -206,6 +228,13 @@ namespace HeavenStudio.Editor.Track
{ {
instance = this; instance = this;
for (var i = 0; i < LayerCount; i++)
{
var bg = Instantiate(layerBG.gameObject, layerBG.rectTransform.parent).GetComponent<Image>();
if (i % 2 == 0) bg.enabled = false;
}
layerBG.gameObject.SetActive(false);
LoadRemix(); LoadRemix();
TimelineSlider.GetChild(0).GetComponent<Image>().color = EditorTheme.theme.properties.BeatMarkerCol.Hex2RGB(); TimelineSlider.GetChild(0).GetComponent<Image>().color = EditorTheme.theme.properties.BeatMarkerCol.Hex2RGB();
@ -260,11 +289,11 @@ namespace HeavenStudio.Editor.Track
ZoomInBTN.onClick.AddListener(delegate ZoomInBTN.onClick.AddListener(delegate
{ {
zoomComponent.ZoomIn(0.015f * TimelineContent.localScale.x, Vector2.zero); zoomComponent.Zoom(0.25f * zoomComponent.Scale.x, Vector2.zero);
}); });
ZoomOutBTN.onClick.AddListener(delegate ZoomOutBTN.onClick.AddListener(delegate
{ {
zoomComponent.ZoomOut(-0.0125f * TimelineContent.localScale.x, Vector2.zero); zoomComponent.Zoom(-0.2f * zoomComponent.Scale.x, Vector2.zero);
}); });
ZoomResetBTN.onClick.AddListener(delegate ZoomResetBTN.onClick.AddListener(delegate
{ {
@ -304,6 +333,8 @@ namespace HeavenStudio.Editor.Track
SetTimeButtonColors(true, false, false); SetTimeButtonColors(true, false, false);
MetronomeBTN.transform.GetChild(0).GetComponent<Image>().color = Color.gray; MetronomeBTN.transform.GetChild(0).GetComponent<Image>().color = Color.gray;
MetronomeBTN.transform.GetChild(1).GetComponent<Image>().color = Color.gray;
MetronomeBTN.transform.GetChild(2).GetComponent<Image>().color = Color.gray;
timelineState.SetState(CurrentTimelineState.State.Selection); timelineState.SetState(CurrentTimelineState.State.Selection);
@ -314,12 +345,14 @@ namespace HeavenStudio.Editor.Track
public void FitToSong() public void FitToSong()
{ {
var currentSizeDelta = TimelineContent.sizeDelta; var currentSizeDelta = RealTimelineContent.sizeDelta;
float songBeats = Conductor.instance.SongLengthInBeats(); float songBeats = Conductor.instance.SongLengthInBeats();
if (songBeats == 0) songBeats = 320; if (songBeats == 0) songBeats = 320;
else songBeats += 10; else songBeats += 10;
TimelineContent.sizeDelta = new Vector2(songBeats, currentSizeDelta.y);
TimelineEventGrid.sizeDelta = new Vector2(songBeats, currentSizeDelta.y); TimelineContent.sizeDelta = new Vector2(songBeats * PixelsPerBeat, currentSizeDelta.y);
// TimelineEventGrid.sizeDelta = new Vector2(songBeats * PixelsPerBeat, currentSizeDelta.y);
RealTimelineContent.sizeDelta = new Vector2(TimelineContent.sizeDelta.x / Zoom, RealTimelineContent.sizeDelta.y);
} }
public void CreateWaveform() public void CreateWaveform()
@ -349,17 +382,20 @@ namespace HeavenStudio.Editor.Track
} }
} }
public void MetronomeToggle() public void MetronomeToggle()
{ {
if (!Conductor.instance.metronome) if (!Conductor.instance.metronome)
{ {
MetronomeBTN.transform.GetChild(0).GetComponent<Image>().color = "009FC6".Hex2RGB(); MetronomeBTN.transform.GetChild(0).GetComponent<Image>().color = "009FC6".Hex2RGB();
MetronomeBTN.transform.GetChild(1).GetComponent<Image>().color = "009FC6".Hex2RGB();
MetronomeBTN.transform.GetChild(2).GetComponent<Image>().color = "009FC6".Hex2RGB();
Conductor.instance.metronome = true; Conductor.instance.metronome = true;
} }
else else
{ {
MetronomeBTN.transform.GetChild(0).GetComponent<Image>().color = Color.gray; MetronomeBTN.transform.GetChild(0).GetComponent<Image>().color = Color.gray;
MetronomeBTN.transform.GetChild(1).GetComponent<Image>().color = Color.gray;
MetronomeBTN.transform.GetChild(2).GetComponent<Image>().color = Color.gray;
Conductor.instance.metronome = false; Conductor.instance.metronome = false;
} }
} }
@ -373,6 +409,54 @@ namespace HeavenStudio.Editor.Track
private void Update() private void Update()
{ {
RectTransformUtility.ScreenPointToLocalPointInRectangle(EventContent, Input.mousePosition, Editor.instance.EditorCamera, out relativeMousePos);
MouseInTimeline = this.gameObject.activeSelf && RectTransformUtility.RectangleContainsScreenPoint(EventContent, Input.mousePosition, Editor.instance.EditorCamera);
/*
if (MouseInTimeline)
{
var wheel = Input.mouseScrollDelta.y;
if (wheel != 0)
{
var incre = 0.0f;
if (wheel > 0)
{
incre += wheel * (Zoom * 0.25f);
}
else
{
incre += wheel * (Zoom * 0.2f);
}
var v = new Vector3[4];
TimelineScroll.viewport.GetWorldCorners(v);
var viewportPos = Editor.instance.EditorCamera.WorldToScreenPoint(v[0]);
var left = leftSide;
var viewportWidth = TimelineScroll.viewport.rect.width;
var localPointRec = Mathf.Lerp(left, left + (viewportWidth / Zoom),
Mathp.Normalize(Input.mousePosition.x, viewportPos.x, viewportPos.x + viewportWidth));
var xPixels = (localPointRec * incre);
xPixels *= (Zoom);
TimelineContent.anchoredPosition = new Vector2(
TimelineContent.anchoredPosition.x - xPixels,
TimelineContent.anchoredPosition.y
);
Zoom += incre;
Zoom = Mathf.Clamp(Zoom, 1, 1000);
}
}
*/
MousePos2Beat = relativeMousePos.x / PixelsPerBeat;
MousePos2Layer = Mathf.Clamp(Mathf.FloorToInt(-(relativeMousePos.y) / LayerHeight()), 0, LayerCount - 1);
Conductor cond = Conductor.instance; Conductor cond = Conductor.instance;
// waveform.rectTransform.anchoredPosition = new Vector2( // waveform.rectTransform.anchoredPosition = new Vector2(
// -(GameManager.instance.Beatmap.data.offset / (60.0f / GameManager.instance.Beatmap.bpm)), // -(GameManager.instance.Beatmap.data.offset / (60.0f / GameManager.instance.Beatmap.bpm)),
@ -382,8 +466,8 @@ namespace HeavenStudio.Editor.Track
if (!cond.isPlaying && !cond.isPaused) if (!cond.isPlaying && !cond.isPaused)
{ {
SongBeat.text = $"Beat {string.Format("{0:0.000}", TimelineSlider.localPosition.x)}"; SongBeat.text = $"Beat {string.Format("{0:0.000}", PlaybackBeat)}";
SongPos.text = FormatTime(cond.GetSongPosFromBeat(TimelineSlider.localPosition.x)); SongPos.text = FormatTime(cond.GetSongPosFromBeat(PlaybackBeat));
} }
else else
{ {
@ -391,6 +475,29 @@ namespace HeavenStudio.Editor.Track
SongPos.text = FormatTime(cond.songPositionAsDouble); SongPos.text = FormatTime(cond.songPositionAsDouble);
} }
// Metronome animation
{
var rectTransform = MetronomeBTN.transform.GetChild(1).GetComponent<RectTransform>();
var rot = 0.0f;
if (Conductor.instance.metronome)
{
var startBeat = Mathf.FloorToInt(Conductor.instance.songPositionInBeats - 0.5f);
var nm = Conductor.instance.GetLoopPositionFromBeat(0.5f, 1f);
var loop = (startBeat % 2 == 0) ? Mathf.SmoothStep(-1.1f, 1f, nm) : Mathf.SmoothStep(1f, -1f, nm);
rot = loop * 45f;
}
else
{
rot = Mathf.LerpAngle(rectTransform.localEulerAngles.z, 0.0f, Time.deltaTime * 16);
}
rectTransform.localEulerAngles =
new Vector3(rectTransform.localEulerAngles.x, rectTransform.localEulerAngles.y,
rot);
}
SliderControl(); SliderControl();
#region Keyboard Shortcuts #region Keyboard Shortcuts
@ -446,11 +553,11 @@ namespace HeavenStudio.Editor.Track
if (Input.GetKey(KeyCode.LeftArrow) || (!Input.GetKey(KeyCode.LeftControl) && Input.GetKey(KeyCode.A))) if (Input.GetKey(KeyCode.LeftArrow) || (!Input.GetKey(KeyCode.LeftControl) && Input.GetKey(KeyCode.A)))
{ {
TimelineContent.transform.localPosition += new Vector3(moveSpeed * Time.deltaTime, 0); RealTimelineContent.transform.localPosition += new Vector3(moveSpeed * Time.deltaTime, 0);
} }
else if (Input.GetKey(KeyCode.RightArrow) || (!Input.GetKey(KeyCode.LeftControl) && Input.GetKey(KeyCode.D))) else if (Input.GetKey(KeyCode.RightArrow) || (!Input.GetKey(KeyCode.LeftControl) && Input.GetKey(KeyCode.D)))
{ {
TimelineContent.transform.localPosition += new Vector3(-moveSpeed * Time.deltaTime, 0); RealTimelineContent.transform.localPosition += new Vector3(-moveSpeed * Time.deltaTime, 0);
} }
} }
#endregion #endregion
@ -465,23 +572,53 @@ namespace HeavenStudio.Editor.Track
} }
if (movingPlayback) if (movingPlayback)
{ {
RectTransformUtility.ScreenPointToLocalPointInRectangle(TimelineContent, Input.mousePosition, Editor.instance.EditorCamera, out lastMousePos); var playbackBeat = Mathf.Max(MousePos2BeatSnap, 0);
TimelineSlider.localPosition = new Vector3(Mathf.Max(Mathp.Round2Nearest(lastMousePos.x + 0.12f, Timeline.SnapInterval()), 0), TimelineSlider.transform.localPosition.y); TimelineSlider.localPosition = new Vector3(playbackBeat * PixelsPerBeat, TimelineSlider.transform.localPosition.y);
if (TimelineSlider.localPosition.x != lastBeatPos) cond.SetBeat(playbackBeat);
cond.SetBeat(TimelineSlider.transform.localPosition.x); this.PlaybackBeat = playbackBeat;
lastBeatPos = TimelineSlider.localPosition.x;
} }
if (cond.isPlaying) if (cond.isPlaying)
PlaybackFocus(true); PlaybackFocus(true);
TimelineContent.transform.localPosition = new Vector3(Mathf.Clamp(TimelineContent.transform.localPosition.x, Mathf.NegativeInfinity, 0), TimelineContent.transform.localPosition.y); RealTimelineContent.transform.localPosition = new Vector3(Mathf.Clamp(RealTimelineContent.transform.localPosition.x, Mathf.NegativeInfinity, 0), RealTimelineContent.transform.localPosition.y);
CurrentTempo.text = $" = {cond.songBpm}"; CurrentTempo.text = $" = {cond.songBpm}";
LayersRect.GetWorldCorners(LayerCorners); LayersRect.GetWorldCorners(LayerCorners);
for (var i = 0; i < LayersRect.childCount; i++)
{
var layerRect = LayersRect.GetChild(i).GetComponent<RectTransform>();
layerRect.anchoredPosition = new Vector2(layerRect.anchoredPosition.x, -LayerHeight() * (i - 1));
layerRect.sizeDelta = new Vector2(layerRect.sizeDelta.x, LayerHeight());
}
for (var i = 0; i < layerBG.rectTransform.parent.childCount; i++)
{
var layerRect = layerBG.rectTransform.parent.GetChild(i).GetComponent<RectTransform>();
layerRect.anchoredPosition = new Vector2(layerRect.anchoredPosition.x, -LayerHeight() * (i - 1));
layerRect.sizeDelta = new Vector2(layerRect.sizeDelta.x, LayerHeight());
}
RealTimelineContent.sizeDelta = new Vector2(RealTimelineContent.sizeDelta.x, LayerHeight() * LayerCount);
}
public void LateUpdate()
{
TimelineBlockManager.Instance.UpdateMarkers();
BoxSelection.instance.LayerSelectUpdate();
TimelineContent.anchoredPosition = RealTimelineContent.anchoredPosition;
TopPanelContent.anchoredPosition = new Vector2(TimelineContent.anchoredPosition.x, TopPanelContent.anchoredPosition.y);
TopPanelContent.sizeDelta = new Vector2(TimelineContent.sizeDelta.x, TopPanelContent.sizeDelta.y);
OverlayPanelContent.anchoredPosition = new Vector2(TimelineContent.anchoredPosition.x, OverlayPanelContent.anchoredPosition.y);
OverlayPanelContent.sizeDelta = new Vector2(TimelineContent.sizeDelta.x, OverlayPanelContent.sizeDelta.y);
LayersRect.anchoredPosition = new Vector2(LayersRect.anchoredPosition.x, TimelineContent.anchoredPosition.y);
} }
public static float GetScaleModifier() public static float GetScaleModifier()
@ -498,12 +635,11 @@ namespace HeavenStudio.Editor.Track
private void SliderControl() private void SliderControl()
{ {
TimelinePlaybackBeat.text = $"Beat {string.Format("{0:0.000}", TimelineSlider.localPosition.x)}"; TimelinePlaybackBeat.text = $"Beat {string.Format("{0:0.000}", PlaybackBeat)}";
if (TimelineSongPosLine != null) if (TimelineSongPosLine != null)
{ {
TimelineSongPosLine.transform.localPosition = new Vector3(Conductor.instance.songPositionInBeats, TimelineSongPosLine.transform.localPosition.y); TimelineSongPosLine.transform.localPosition = new Vector3(Conductor.instance.songPositionInBeats * PixelsPerBeat, TimelineSongPosLine.transform.localPosition.y);
TimelineSongPosLine.transform.localScale = new Vector3(1f / TimelineContent.transform.localScale.x, TimelineSongPosLine.transform.localScale.y, 1);
} }
} }
@ -514,11 +650,11 @@ namespace HeavenStudio.Editor.Track
{ {
if (!Conductor.instance.isPlaying && !Conductor.instance.isPaused) if (!Conductor.instance.isPlaying && !Conductor.instance.isPaused)
{ {
Play(false, TimelineSlider.transform.localPosition.x); Play(false, PlaybackBeat);
} }
else else
{ {
Stop(TimelineSlider.transform.localPosition.x); Stop(PlaybackBeat);
} }
} }
@ -528,11 +664,11 @@ namespace HeavenStudio.Editor.Track
{ {
if (TimelineSongPosLine == null) if (TimelineSongPosLine == null)
{ {
Play(false, TimelineSlider.transform.localPosition.x); Play(false, PlaybackBeat);
} }
else else
{ {
Play(false, TimelineSongPosLine.transform.localPosition.x); Play(false, Conductor.instance.songPositionInBeats);
} }
} }
else if (!Conductor.instance.isPaused) else if (!Conductor.instance.isPaused)
@ -597,7 +733,8 @@ namespace HeavenStudio.Editor.Track
PauseBTN.transform.GetChild(0).GetComponent<Image>().color = Color.white; PauseBTN.transform.GetChild(0).GetComponent<Image>().color = Color.white;
} }
else else
{ PauseBTN.transform.GetChild(0).GetComponent<Image>().color = Color.gray; {
PauseBTN.transform.GetChild(0).GetComponent<Image>().color = Color.gray;
PauseBTN.enabled = false; PauseBTN.enabled = false;
} }
@ -624,11 +761,6 @@ namespace HeavenStudio.Editor.Track
return string.Format("{0:00}:{1:00}:{2:000}", minutes, seconds, milliseconds); return string.Format("{0:00}:{1:00}:{2:000}", minutes, seconds, milliseconds);
} }
public bool CheckIfMouseInTimeline()
{
return (this.gameObject.activeSelf && RectTransformUtility.RectangleContainsScreenPoint(TimelineEventGrid, Input.mousePosition, Editor.instance.EditorCamera));
}
#endregion #endregion
#region Functions #region Functions
@ -637,9 +769,10 @@ namespace HeavenStudio.Editor.Track
{ {
var lerpSpd = (lerp) ? 12f : 10000000; // im lazy var lerpSpd = (lerp) ? 12f : 10000000; // im lazy
var newPos = new Vector3((-Conductor.instance.songPositionInBeats * TimelineContent.localScale.x) + 200, TimelineContent.transform.localPosition.y); var newPos = new Vector3((-Conductor.instance.songPositionInBeats * PixelsPerBeat) + 200, RealTimelineContent.transform.localPosition.y);
TimelineContent.transform.localPosition = newPos.x = Mathf.Max(newPos.x, -(TimelineContent.rect.width - TimelineScroll.viewport.rect.width));
Vector3.Lerp(TimelineContent.transform.localPosition, newPos, Time.deltaTime * lerpSpd); RealTimelineContent.transform.localPosition =
Vector3.Lerp(RealTimelineContent.transform.localPosition, newPos, Time.deltaTime * lerpSpd);
} }
public void WaveformToggle() public void WaveformToggle()
@ -740,6 +873,107 @@ namespace HeavenStudio.Editor.Track
return tex2D; return tex2D;
} }
public TimelineEventObj AddEventObject(string eventName, bool dragNDrop = false, Vector3 pos = new Vector3(), RiqEntity entity = null, bool addEvent = false)
{
var game = EventCaller.instance.GetMinigame(eventName.Split(0));
var action = EventCaller.instance.GetGameAction(game, eventName.Split(1));
var gameAction = EventCaller.instance.GetGameAction(EventCaller.instance.GetMinigame(eventName.Split(0)), eventName.Split(1));
if (addEvent)
{
RiqEntity tempEntity = entity;
if (entity == null)
{
RiqEntity en = GameManager.instance.Beatmap.AddNewEntity(eventName, 0, gameAction.defaultLength);
tempEntity = en;
// default param values
var ep = action.parameters;
if (ep != null)
{
for (int i = 0; i < ep.Count; i++)
{
object returnVal = ep[i].parameter;
var propertyType = returnVal.GetType();
if (propertyType == typeof(EntityTypes.Integer))
{
returnVal = ((EntityTypes.Integer)ep[i].parameter).val;
}
else if (propertyType == typeof(EntityTypes.Float))
{
returnVal = ((EntityTypes.Float)ep[i].parameter).val;
}
else if (propertyType.IsEnum)
{
returnVal = (int)ep[i].parameter;
}
//tempEntity[ep[i].propertyName] = returnVal;
tempEntity.CreateProperty(ep[i].propertyName, returnVal);
}
}
}
else
{
// GameManager.instance.Beatmap.Entities.Add(tempEntity);
Debug.LogWarning("Weird as fuck case called?");
}
GameManager.instance.SortEventsList();
TimelineBlockManager.Instance.SetEntityToSet(tempEntity);
}
else
{
TimelineBlockManager.Instance.SetEntityToSet(entity);
}
var marker = TimelineBlockManager.Instance.Pool.Get();
marker.SetMarkerInfo();
if (dragNDrop)
{
Selections.instance.ClickSelect(marker);
marker.moving = true;
}
else
{
entity["track"] = marker.GetTrack();
}
CommandManager.Instance.AddCommand(new Commands.Place(marker.entity, marker.entity.guid));
return marker;
}
public void CopySelected()
{
CopyEntities(Selections.instance.eventsSelected.Select(c => c.entity).ToList());
}
public void CopyEntities(List<RiqEntity> original)
{
if (original.Count <= 0) return;
CopiedEntities.Clear();
foreach (RiqEntity entity in original)
{
CopiedEntities.Add(entity.DeepCopy());
}
}
public void Paste()
{
CommandManager.Instance.AddCommand(new Commands.Paste(CopiedEntities));
}
/*
public TimelineEventObj AddEventObject(string eventName, bool dragNDrop = false, Vector3 pos = new Vector3(), RiqEntity entity = null, bool addEvent = false) public TimelineEventObj AddEventObject(string eventName, bool dragNDrop = false, Vector3 pos = new Vector3(), RiqEntity entity = null, bool addEvent = false)
{ {
var game = EventCaller.instance.GetMinigame(eventName.Split(0)); var game = EventCaller.instance.GetMinigame(eventName.Split(0));
@ -761,7 +995,7 @@ namespace HeavenStudio.Editor.Track
{ {
if (gameAction.resizable == false) if (gameAction.resizable == false)
{ {
g.GetComponent<RectTransform>().sizeDelta = new Vector2(gameAction.defaultLength, LayerHeight()); g.GetComponent<RectTransform>().sizeDelta = new Vector2(gameAction.defaultLength * Timeline.instance.PixelsPerBeat, LayerHeight());
float length = gameAction.defaultLength; float length = gameAction.defaultLength;
eventObj.length = length; eventObj.length = length;
} }
@ -770,11 +1004,11 @@ namespace HeavenStudio.Editor.Track
eventObj.resizable = true; eventObj.resizable = true;
if (entity != null && gameAction.defaultLength != entity.length && dragNDrop == false) if (entity != null && gameAction.defaultLength != entity.length && dragNDrop == false)
{ {
g.GetComponent<RectTransform>().sizeDelta = new Vector2(entity.length, LayerHeight()); g.GetComponent<RectTransform>().sizeDelta = new Vector2(entity.length * Timeline.instance.PixelsPerBeat, LayerHeight());
} }
else else
{ {
g.GetComponent<RectTransform>().sizeDelta = new Vector2(gameAction.defaultLength, LayerHeight()); g.GetComponent<RectTransform>().sizeDelta = new Vector2(gameAction.defaultLength * Timeline.instance.PixelsPerBeat, LayerHeight());
} }
} }
} }
@ -850,6 +1084,7 @@ namespace HeavenStudio.Editor.Track
return eventObj; return eventObj;
} }
*/
private List<TimelineEventObj> duplicatedEventObjs = new List<TimelineEventObj>(); private List<TimelineEventObj> duplicatedEventObjs = new List<TimelineEventObj>();
public TimelineEventObj CopyEventObject(TimelineEventObj e) public TimelineEventObj CopyEventObject(TimelineEventObj e)
@ -861,51 +1096,22 @@ namespace HeavenStudio.Editor.Track
return dup; return dup;
} }
public void FinalizeDuplicateEventStack()
{
CommandManager.instance.Execute(new Commands.Duplicate(duplicatedEventObjs));
duplicatedEventObjs = new List<TimelineEventObj>();
}
public void DestroyEventObject(RiqEntity entity)
{
if (EventParameterManager.instance.entity == entity)
EventParameterManager.instance.Disable();
// eventObjs.Remove(entity.eventObj);
foreach (TimelineEventObj e in eventObjs)
{
if (e.entity == entity)
{
Destroy(e.gameObject);
eventObjs.Remove(e);
break;
}
}
GameManager.instance.Beatmap.Entities.Remove(entity);
GameManager.instance.SortEventsList();
}
public bool IsMouseAboveEvents()
{
return Timeline.instance.eventObjs.FindAll(c => c.mouseHovering == true).Count > 0;
}
public bool InteractingWithEvents()
{
return eventObjs.FindAll(c => c.moving == true).Count > 0 || eventObjs.FindAll(c => c.resizing == true).Count > 0;
}
public float SnapToLayer(float y) public float SnapToLayer(float y)
{ {
float size = LayerHeight(); float size = LayerHeight();
return Mathf.Clamp(Mathp.Round2Nearest(y, size), -size * 4f, 0f); return Mathf.Clamp(Mathp.Round2Nearest(y, size), -size * (LayerCount - 1), 0f);
} }
public float LayerHeight() public float LayerHeight()
{ {
return LayersRect.rect.height / 5f; var defaultHeight = 32;
return Mathf.Max(defaultHeight, (LayersRect.rect.height / LayerCount));
// return LayersRect.rect.height / LayerCount;
}
public float LayerToY(int layer)
{
return (-layer * LayerHeight());
} }
const float SpeedSnap = 0.25f; const float SpeedSnap = 0.25f;
@ -927,6 +1133,16 @@ namespace HeavenStudio.Editor.Track
} }
} }
public void OnZoom(float zoom)
{
Zoom = zoom;
TimelineSlider.localPosition = new Vector3(Conductor.instance.songPositionInBeats * PixelsPerBeat, TimelineSlider.transform.localPosition.y);
FitToSong();
TimelineBlockManager.Instance.OnZoom();
}
public void UpdateOffsetText() public void UpdateOffsetText()
{ {
// show up to 4 decimal places // show up to 4 decimal places

View file

@ -0,0 +1,191 @@
using System;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Pool;
using Jukebox;
using static System.Windows.Forms.VisualStyles.VisualStyleElement.Header;
using System.Linq;
namespace HeavenStudio.Editor.Track
{
public class TimelineBlockManager : MonoBehaviour
{
public static TimelineBlockManager Instance { get; private set; }
public TimelineEventObj EntityTemplate;
public Dictionary<Guid, TimelineEventObj> EntityMarkers = new();
public ObjectPool<TimelineEventObj> Pool { get; private set; }
private int firstMarkerToCareAbout = 0;
private int lastMarkerToCareAbout = 0;
private Timeline timeline;
private RiqEntity entityToSet;
public bool InteractingWithEvents { get; private set; } = false;
public bool MovingAnyEvents { get; private set; } = false;
public void SetEntityToSet(RiqEntity entity)
{
entityToSet = entity;
}
private void Awake()
{
Instance = this;
timeline = GetComponent<Timeline>();
Pool = new ObjectPool<TimelineEventObj>(CreateMarker, OnTakeMarkerFromPool, OnReturnMarkerToPool, OnDestroyMarker, true, 125, 1500);
}
public void Load()
{
var timeLeft = timeline.leftSide;
var timeRight = timeline.rightSide;
foreach (var marker in EntityMarkers)
{
Destroy(marker.Value.gameObject);
}
EntityMarkers.Clear();
Pool.Clear();
foreach (var entity in GameManager.instance.Beatmap.Entities)
{
var vLeft = entity.beat + entity.length >= timeLeft;
var vRight = entity.beat < timeRight;
var active = vLeft && vRight;
if (!active) continue;
entityToSet = entity;
Pool.Get();
Debug.Log(entity.datamodel);
}
}
public TimelineEventObj CreateEntity(RiqEntity entity)
{
entityToSet = entity;
var marker = Pool.Get();
marker.UpdateMarker();
return marker;
}
public void OnZoom()
{
foreach (var marker in EntityMarkers.Values)
{
marker.SetWidthHeight();
}
}
public void UpdateMarkers()
{
var timeLeft = timeline.leftSide;
var timeRight = timeline.rightSide;
var markersActiveBeats = new List<float>();
foreach (var marker in EntityMarkers.Values)
{
if (marker.selected || marker.moving)
{
markersActiveBeats.Add((float)marker.entity.beat);
}
}
for (var i = 0; i < GameManager.instance.Beatmap.Entities.Count; i++)
{
var entity = GameManager.instance.Beatmap.Entities[i];
var vLeft = entity.beat + entity.length >= timeLeft;
var vRight = entity.beat < timeRight;
var active = vLeft && vRight;
var containsMarker = EntityMarkers.ContainsKey(entity.guid);
if (containsMarker)
{
var marker = EntityMarkers[entity.guid];
if (marker.selected || marker.moving) active = true;
}
if (active)
{
if (!containsMarker)
{
entityToSet = entity;
Pool.Get();
}
EntityMarkers[entity.guid].UpdateMarker();
}
else
{
if (EntityMarkers.ContainsKey(entity.guid))
Pool.Release(EntityMarkers[entity.guid]);
}
}
InteractingWithEvents = false;
MovingAnyEvents = false;
foreach (var marker in EntityMarkers.Values)
{
if (marker.moving || marker.resizing || marker.mouseHovering)
InteractingWithEvents = true;
if (marker.moving)
MovingAnyEvents = true;
}
}
public void SortMarkers()
{
// Debug.Log("Sorted timeline blocks.");
var sortedBlocks = EntityMarkers.Values.OrderByDescending(c => c.entity.length).ToList();
var i = 0;
foreach (var block in EntityMarkers.Values)
{
var index = sortedBlocks.FindIndex(c => c.entity.guid == block.entity.guid);
block.transform.SetSiblingIndex(index + 1);
i++;
}
}
private TimelineEventObj CreateMarker()
{
TimelineEventObj marker = Instantiate(EntityTemplate.gameObject, Timeline.instance.TimelineEventsHolder).GetComponent<TimelineEventObj>();
return marker;
}
private void OnTakeMarkerFromPool(TimelineEventObj marker)
{
marker.SetEntity(entityToSet);
marker.SetMarkerInfo();
SortMarkers();
marker.gameObject.SetActive(true);
EntityMarkers.Add(entityToSet.guid, marker);
}
private void OnReturnMarkerToPool(TimelineEventObj marker)
{
EntityMarkers.Remove(marker.entity.guid);
marker.gameObject.SetActive(false);
}
private void OnDestroyMarker(TimelineEventObj marker)
{
Destroy(marker.gameObject);
}
}
}

Some files were not shown because too many files have changed in this diff Show more