Editor Sorting Fixes & Upgrades (#808)

* ready to pr i think

Fixed Alphabetical Sorting.
Fixed Chronological Sorting by adding a sorting value to every minigame.
Added Sort By Usage.

* i accidentally removed a bunch of work from yall oops this should fix that i think
This commit is contained in:
playinful 2024-03-28 22:35:07 -04:00 committed by GitHub
parent 60cf2c146d
commit 65a243fa68
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
78 changed files with 607 additions and 145 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

View file

@ -0,0 +1,123 @@
fileFormatVersion: 2
guid: 3778df98d84dafe4dbc912dcab3598c3
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: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 0
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
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
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

@ -65,6 +65,7 @@ SpriteAtlas:
- {fileID: 21300000, guid: e85d5d286a8191b499c570d33dd0899c, type: 3} - {fileID: 21300000, guid: e85d5d286a8191b499c570d33dd0899c, type: 3}
- {fileID: 21300000, guid: 39656548c069d5541a9d9d1a808a76e4, type: 3} - {fileID: 21300000, guid: 39656548c069d5541a9d9d1a808a76e4, type: 3}
- {fileID: 21300000, guid: 21da6678ec5624a439f87f3487819ac0, type: 3} - {fileID: 21300000, guid: 21da6678ec5624a439f87f3487819ac0, type: 3}
- {fileID: 21300000, guid: 3778df98d84dafe4dbc912dcab3598c3, type: 3}
- {fileID: 21300000, guid: b7a1fac8b59b4d14289fa198206ef47e, type: 3} - {fileID: 21300000, guid: b7a1fac8b59b4d14289fa198206ef47e, type: 3}
- {fileID: 21300000, guid: 0c4626a9a4642554684b85376bc236eb, type: 3} - {fileID: 21300000, guid: 0c4626a9a4642554684b85376bc236eb, type: 3}
- {fileID: 21300000, guid: 6e7b88d9d62ed1b429c63b83745e3672, type: 3} - {fileID: 21300000, guid: 6e7b88d9d62ed1b429c63b83745e3672, type: 3}
@ -97,6 +98,7 @@ SpriteAtlas:
- bookmark - bookmark
- add-file - add-file
- tempo-finder - tempo-finder
- temp
- GameEventArrow - GameEventArrow
- exit - exit
- selection - selection

View file

@ -414,9 +414,9 @@ RectTransform:
m_Father: {fileID: 574002313} m_Father: {fileID: 574002313}
m_RootOrder: 0 m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1} m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: -21} m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 32, y: 32} m_SizeDelta: {x: 32, y: 32}
m_Pivot: {x: 0, y: 0.5} m_Pivot: {x: 0, y: 0.5}
--- !u!114 &9435782 --- !u!114 &9435782
@ -3846,9 +3846,9 @@ RectTransform:
m_Father: {fileID: 539838476} m_Father: {fileID: 539838476}
m_RootOrder: 0 m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1} m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 32, y: -21} m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 32, y: 32} m_SizeDelta: {x: 32, y: 32}
m_Pivot: {x: 1, y: 0.5} m_Pivot: {x: 1, y: 0.5}
--- !u!114 &121871281 --- !u!114 &121871281
@ -4070,9 +4070,9 @@ RectTransform:
m_Father: {fileID: 539838476} m_Father: {fileID: 539838476}
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: 1} m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 72, y: -21} m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 32, y: 32} m_SizeDelta: {x: 32, y: 32}
m_Pivot: {x: 1, y: 0.5} m_Pivot: {x: 1, y: 0.5}
--- !u!114 &129013734 --- !u!114 &129013734
@ -4206,9 +4206,9 @@ RectTransform:
m_Father: {fileID: 539838476} m_Father: {fileID: 539838476}
m_RootOrder: 2 m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1} m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 112, y: -21} m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 32, y: 32} m_SizeDelta: {x: 32, y: 32}
m_Pivot: {x: 1, y: 0.5} m_Pivot: {x: 1, y: 0.5}
--- !u!114 &151246938 --- !u!114 &151246938
@ -5718,6 +5718,7 @@ RectTransform:
- {fileID: 683785374} - {fileID: 683785374}
- {fileID: 1436105794} - {fileID: 1436105794}
- {fileID: 345154593} - {fileID: 345154593}
- {fileID: 1813998107}
m_Father: {fileID: 1791483803} m_Father: {fileID: 1791483803}
m_RootOrder: 0 m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@ -8194,7 +8195,7 @@ MonoBehaviour:
m_faceColor: m_faceColor:
serializedVersion: 2 serializedVersion: 2
rgba: 4294967295 rgba: 4294967295
m_fontSize: 9.6 m_fontSize: 14
m_fontSizeBase: 14.3 m_fontSizeBase: 14.3
m_fontWeight: 400 m_fontWeight: 400
m_enableAutoSizing: 1 m_enableAutoSizing: 1
@ -13012,7 +13013,7 @@ MonoBehaviour:
m_TargetGraphic: {fileID: 171581557} m_TargetGraphic: {fileID: 171581557}
m_HandleRect: {fileID: 171581556} m_HandleRect: {fileID: 171581556}
m_Direction: 2 m_Direction: 2
m_Value: 1 m_Value: 0
m_Size: 1 m_Size: 1
m_NumberOfSteps: 0 m_NumberOfSteps: 0
m_OnValueChanged: m_OnValueChanged:
@ -30368,7 +30369,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.5} m_AnchorMin: {x: 0, y: 0.5}
m_AnchorMax: {x: 1, y: 0.5} m_AnchorMax: {x: 1, y: 0.5}
m_AnchoredPosition: {x: 0, y: 76.36734} m_AnchoredPosition: {x: 0, y: 76.00001}
m_SizeDelta: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 1} m_Pivot: {x: 0.5, y: 1}
--- !u!222 &1154875945 --- !u!222 &1154875945
@ -31241,6 +31242,82 @@ RectTransform:
m_AnchoredPosition: {x: -5, y: 0} m_AnchoredPosition: {x: -5, y: 0}
m_SizeDelta: {x: -20, y: 0} m_SizeDelta: {x: -20, y: 0}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &1191898845
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1191898846}
- component: {fileID: 1191898848}
- component: {fileID: 1191898847}
m_Layer: 5
m_Name: Graphic
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1191898846
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1191898845}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1813998107}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1191898847
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1191898845}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 3778df98d84dafe4dbc912dcab3598c3, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!222 &1191898848
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1191898845}
m_CullTransparentMesh: 1
--- !u!1 &1196204502 --- !u!1 &1196204502
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -34622,9 +34699,9 @@ RectTransform:
m_Father: {fileID: 574002313} m_Father: {fileID: 574002313}
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: 1} m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 40, y: -21} m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 32, y: 32} m_SizeDelta: {x: 32, y: 32}
m_Pivot: {x: 0, y: 0.5} m_Pivot: {x: 0, y: 0.5}
--- !u!114 &1345846031 --- !u!114 &1345846031
@ -39829,7 +39906,7 @@ MonoBehaviour:
m_HandleRect: {fileID: 1220118244} m_HandleRect: {fileID: 1220118244}
m_Direction: 2 m_Direction: 2
m_Value: 1.0000002 m_Value: 1.0000002
m_Size: 0.23447229 m_Size: 0.23142865
m_NumberOfSteps: 0 m_NumberOfSteps: 0
m_OnValueChanged: m_OnValueChanged:
m_PersistentCalls: m_PersistentCalls:
@ -42946,9 +43023,9 @@ RectTransform:
m_Father: {fileID: 574002313} m_Father: {fileID: 574002313}
m_RootOrder: 2 m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1} m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 80, y: -21} m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 32, y: 32} m_SizeDelta: {x: 32, y: 32}
m_Pivot: {x: 0, y: 0.5} m_Pivot: {x: 0, y: 0.5}
--- !u!114 &1783491359 --- !u!114 &1783491359
@ -43775,6 +43852,154 @@ MonoBehaviour:
m_ChildScaleWidth: 0 m_ChildScaleWidth: 0
m_ChildScaleHeight: 0 m_ChildScaleHeight: 0
m_ReverseArrangement: 0 m_ReverseArrangement: 0
--- !u!1 &1813998106
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1813998107}
- component: {fileID: 1813998111}
- component: {fileID: 1813998110}
- component: {fileID: 1813998109}
- component: {fileID: 1813998108}
m_Layer: 5
m_Name: Sort Games By Usage
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1813998107
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1813998106}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.999792, y: 0.999792, z: 0.999792}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1191898846}
m_Father: {fileID: 202724642}
m_RootOrder: 18
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 32, y: 32}
m_Pivot: {x: 0, y: 0.5}
--- !u!114 &1813998108
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1813998106}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 2a525ece7c981f3418a70bbfa58c1146, type: 3}
m_Name:
m_EditorClassIdentifier:
TooltipText: Sort By Usage
--- !u!114 &1813998109
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1813998106}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Navigation:
m_Mode: 0
m_WrapAround: 0
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 1
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.7921569, g: 0.7921569, b: 0.7921569, a: 1}
m_PressedColor: {r: 0.5019608, g: 0.5019608, b: 0.5019608, a: 1}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
m_ColorMultiplier: 1
m_FadeDuration: 0.05
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
m_PressedSprite: {fileID: 0}
m_SelectedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 1813998110}
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1154875947}
m_TargetAssemblyTypeName: HeavenStudio.Editor.GridGameSelector, Assembly-CSharp
m_MethodName: Sort
m_Mode: 5
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument: usage
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &1813998110
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1813998106}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 77703dfffd29ca6439338d6adfc62c9b, type: 3}
m_Type: 3
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 10
--- !u!222 &1813998111
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1813998106}
m_CullTransparentMesh: 1
--- !u!1 &1832891382 --- !u!1 &1832891382
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -51470,7 +51695,7 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 8995444695224805070, guid: 51bd6620194834c4c9118dd0f64b1b3d, type: 3} - target: {fileID: 8995444695224805070, guid: 51bd6620194834c4c9118dd0f64b1b3d, type: 3}
propertyPath: m_AnchoredPosition.y propertyPath: m_AnchoredPosition.y
value: -50 value: -49.999985
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 8995444695466730802, guid: 51bd6620194834c4c9118dd0f64b1b3d, type: 3} - target: {fileID: 8995444695466730802, guid: 51bd6620194834c4c9118dd0f64b1b3d, type: 3}
propertyPath: tabs.Array.size propertyPath: tabs.Array.size

View file

@ -110,6 +110,11 @@ namespace HeavenStudio
} }
} }
public static List<RiqEntity> GetAllInGameManagerList(string gameName)
{
return instance.gameManager.Beatmap.Entities.FindAll(c => c.datamodel.Split('/')[0] == gameName);
}
public static List<RiqEntity> GetAllInGameManagerList(string gameName, string[] include) public static List<RiqEntity> GetAllInGameManagerList(string gameName, string[] include)
{ {
List<RiqEntity> temp1 = instance.gameManager.Beatmap.Entities.FindAll(c => c.datamodel.Split('/')[0] == gameName); List<RiqEntity> temp1 = instance.gameManager.Beatmap.Entities.FindAll(c => c.datamodel.Split('/')[0] == gameName);

View file

@ -223,7 +223,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "rvl", "keep" }, new List<string>() { "rvl", "keep" },
"rvlbadminton", "en", "rvlbadminton", "en",
new List<string>() { "en" } new List<string>() { "en" },
chronologicalSortKey: 13
); );
} }
} }

View file

@ -132,11 +132,12 @@ namespace HeavenStudio.Games.Loaders
new Param("additive", true, "Additive Rotation", "Toggle if the above rotation should be added to the current angle instead of setting the target angle to travel to.") new Param("additive", true, "Additive Rotation", "Toggle if the above rotation should be added to the current angle instead of setting the target angle to travel to.")
} }
}, },
} },
// , // ,
// new List<string>() {"ntr", "normal"}, new List<string>() {"ntr", "normal"},
// "ntrAirboarder", "en", // "ntrAirboarder", "en",
// new List<string>() { } // new List<string>() { }
chronologicalSortKey: 99
); );
} }
} }

View file

@ -90,7 +90,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "ctr", "normal" }, new List<string>() { "ctr", "normal" },
"ctrbear", "en", "ctrbear", "en",
new List<string>() { } new List<string>() { },
chronologicalSortKey: 70
); );
} }
} }

View file

@ -68,7 +68,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "rvl", "normal" }, new List<string>() { "rvl", "normal" },
"rvlrotation", "en", "rvlrotation", "en",
new List<string>() { "en" } new List<string>() { "en" },
chronologicalSortKey: 8
); );
} }
} }

View file

@ -155,7 +155,8 @@ namespace HeavenStudio.Games.Loaders
} }
}, },
}, },
new List<string>() { "agb", "normal" }, "agbBonOdori", "en", new List<string>() { } new List<string>() { "agb", "normal" }, "agbBonOdori", "en", new List<string>() { },
chronologicalSortKey: 10
); );
} }
}; };

View file

@ -65,7 +65,8 @@ namespace HeavenStudio.Games.Loaders
new Param("auto", true, "Lights (Auto)", "Toggle if the lights should automatically activate until the another Lights event is reached.") new Param("auto", true, "Lights (Auto)", "Toggle if the lights should automatically activate until the another Lights event is reached.")
} }
} }
}, new List<string>() { "ntr", "normal" }, "ntrassembly", "en", new List<string>() { }); }, new List<string>() { "ntr", "normal" }, "ntrassembly", "en", new List<string>() { },
chronologicalSortKey: 1);
} }
} }
} }

View file

@ -81,7 +81,8 @@ namespace HeavenStudio.Games.Loaders
new Param("ease", Util.EasingFunction.Ease.Linear, "Ease", "Set the easing of the action."), new Param("ease", Util.EasingFunction.Ease.Linear, "Ease", "Set the easing of the action."),
} }
}, },
}, new List<string>() { "rvl", "normal" }, "rvlbuilt", "en", new List<string>() { }); }, new List<string>() { "rvl", "normal" }, "rvlbuilt", "en", new List<string>() { },
chronologicalSortKey: 12);
} }
} }
} }

View file

@ -85,8 +85,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "pco", "normal" }, new List<string>() { "pco", "normal" },
"pcocannery", "en", "pcocannery", "en",
new List<string>() { } new List<string>() { },
); chronologicalSortKey: 20160704);
} }
} }
} }

View file

@ -59,7 +59,8 @@ namespace HeavenStudio.Games.Loaders
new List<string>() { "ctr", "normal" }, new List<string>() { "ctr", "normal" },
"ctrcatchy", "ctrcatchy",
"en", "en",
new List<string>() { } new List<string>() { },
chronologicalSortKey: 4
); );
} }
} }

View file

@ -102,7 +102,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "rvl", "normal" }, new List<string>() { "rvl", "normal" },
"rvlbooks", "en", "rvlbooks", "en",
new List<string>() { "en" } new List<string>() { "en" },
chronologicalSortKey: 33
); );
} }
} }

View file

@ -69,7 +69,9 @@ namespace HeavenStudio.Games.Loaders
}, },
}, },
}); },
new List<string>() {"rvl", "normal"},
chronologicalSortKey: 301);
} }
} }
} }

View file

@ -62,7 +62,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"agb", "normal"}, new List<string>() {"agb", "normal"},
"agbclap", "en", "agbclap", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 5
); );
} }
} }

View file

@ -53,7 +53,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "ntr", "aim" }, new List<string>() { "ntr", "aim" },
"ntrcoin", "en", "ntrcoin", "en",
new List<string>() { } new List<string>() { },
chronologicalSortKey: 101
); );
} }
} }

View file

@ -66,7 +66,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"ntr", "keep"}, new List<string>() {"ntr", "keep"},
"ntrstomp", "en", "ntrstomp", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 12
); );
} }
} }

View file

@ -81,7 +81,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"ntr", "normal"}, new List<string>() {"ntr", "normal"},
"ntrdj", "en", "ntrdj", "en",
new List<string>(){} new List<string>(){},
chronologicalSortKey: 17
); );
} }
} }

View file

@ -116,7 +116,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "ntr", "normal" }, new List<string>() { "ntr", "normal" },
"ntrninja", "en", "ntrninja", "en",
new List<string>() { } new List<string>() { },
chronologicalSortKey: 23
); );
} }
} }

View file

@ -85,7 +85,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"rvl", "normal"}, new List<string>() {"rvl", "normal"},
"rvldate", "en", "rvldate", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 4
); );
} }
} }

View file

@ -78,7 +78,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"ctr", "normal"}, new List<string>() {"ctr", "normal"},
"ctrintro", "en", "ctrintro", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 0
); );
} }
} }

View file

@ -109,7 +109,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "ntr", "normal" }, new List<string>() { "ntr", "normal" },
"ntridol", "jp", "ntridol", "jp",
new List<string>() { "jp" } new List<string>() { "jp" },
chronologicalSortKey: 4
); );
} }
} }

View file

@ -70,7 +70,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"agb", "normal"}, new List<string>() {"agb", "normal"},
"agbexplode", "en", "agbexplode", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 28
); );
} }
} }

View file

@ -82,7 +82,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "ctr", "repeat" }, new List<string>() { "ctr", "repeat" },
"ctrinterpreter", "en", "ctrinterpreter", "en",
new List<string>() { } new List<string>() { },
chronologicalSortKey: 13
); );
} }
} }

View file

@ -100,7 +100,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "rvl", "keep" }, new List<string>() { "rvl", "keep" },
"rvlseal", "en", "rvlseal", "en",
new List<string>() { "en" } new List<string>() { "en" },
chronologicalSortKey: 22
); );
} }
} }

View file

@ -76,7 +76,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"rvl", "normal"}, new List<string>() {"rvl", "normal"},
"rvlfork", "en", "rvlfork", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 6
); );
} }
} }

View file

@ -204,7 +204,8 @@ namespace HeavenStudio.Games.Loaders
}, },
}, },
new List<string>() { "ntr", "normal" }, new List<string>() { "ntr", "normal" },
"ntrcameraman", "en" "ntrcameraman", "en",
chronologicalSortKey: 13
); );
} }
} }

View file

@ -99,7 +99,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "ntr", "repeat" }, new List<string>() { "ntr", "repeat" },
"ntrchorus", "en", "ntrchorus", "en",
new List<string>() { "en" } new List<string>() { "en" },
chronologicalSortKey: 3
); );
} }
} }

View file

@ -401,7 +401,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "agb", "ntr", "rvl", "ctr", "pco", "normal" }, new List<string>() { "agb", "ntr", "rvl", "ctr", "pco", "normal" },
"karate", "en", "karate", "en",
new List<string>() { "en" } new List<string>() { "en" },
chronologicalSortKey: 1
); );
} }
} }

View file

@ -80,7 +80,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "ctr", "normal" }, new List<string>() { "ctr", "normal" },
"ctrteppan", "en", "ctrteppan", "en",
new List<string>() { } new List<string>() { },
chronologicalSortKey: 74
); );
} }
} }

View file

@ -136,7 +136,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"rvl", "normal"}, new List<string>() {"rvl", "normal"},
"rvlrocket", "en", "rvlrocket", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 26
); );
} }
} }

View file

@ -119,7 +119,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"ntr", "keep"}, new List<string>() {"ntr", "keep"},
"ntrbackbeat", "en", "ntrbackbeat", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 27
); );
} }

View file

@ -229,7 +229,9 @@ namespace HeavenStudio.Games.Loaders
}, },
resizable = true resizable = true
}, },
} },
new List<string>() {"ctr", "normal"},
chronologicalSortKey: 22
); );
} }
} }

View file

@ -88,7 +88,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"agb", "normal"}, new List<string>() {"agb", "normal"},
"agbmannequin", "en", "agbmannequin", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 104
); );
} }
} }

View file

@ -139,7 +139,8 @@ namespace HeavenStudio.Games.Loaders
}}, }},
new List<string>() { "rvl", "normal" }, new List<string>() { "rvl", "normal" },
"rvlmanzai", "jp", "rvlmanzai", "jp",
new List<string>() { "jp" } new List<string>() { "jp" },
chronologicalSortKey: 104
); );
} }
} }

View file

@ -178,7 +178,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "agb", "normal" }, new List<string>() { "agb", "normal" },
"agbmarcher", "en", "agbmarcher", "en",
new List<string>() { "en", "jp" } new List<string>() { "en", "jp" },
chronologicalSortKey: 3
); );
} }
} }

View file

@ -126,7 +126,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "pco", "normal", "repeat" }, new List<string>() { "pco", "normal", "repeat" },
"pcomeat", "en", "pcomeat", "en",
new List<string>() { } new List<string>() { },
chronologicalSortKey: 20220513
); );
} }
} }

View file

@ -135,7 +135,9 @@ namespace HeavenStudio.Games.Loaders
new Param("ease", Util.EasingFunction.Ease.Linear, "Ease") new Param("ease", Util.EasingFunction.Ease.Linear, "Ease")
} }
} }
}); },
new List<string>() {"rvl", "keep"},
chronologicalSortKey: 9);
} }
} }
} }

View file

@ -135,7 +135,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"agb", "keep"}, new List<string>() {"agb", "keep"},
"agboffbeat", "en", "agboffbeat", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 101
); );
} }
} }

View file

@ -151,7 +151,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"ntr", "normal"}, new List<string>() {"ntr", "normal"},
"ntrshugyo", "en", "ntrshugyo", "en",
new List<string>() {"en"} new List<string>() {"en"},
chronologicalSortKey: 16
); );
} }
} }

View file

@ -53,7 +53,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "pco", "normal" }, new List<string>() { "pco", "normal" },
"pconail", "en", "pconail", "en",
new List<string>() { } new List<string>() { },
chronologicalSortKey: 20121009
); );
} }
} }

View file

@ -112,7 +112,9 @@ namespace HeavenStudio.Games.Loaders
new Param("repeat", new EntityTypes.Integer(0, 100, 1), "Repeat Amount", "How many times will this event repeat?"), new Param("repeat", new EntityTypes.Integer(0, 100, 1), "Repeat Amount", "How many times will this event repeat?"),
} }
}, },
}); },
new List<string>() {"agb", "keep"},
chronologicalSortKey: 20);
} }
} }
} }

View file

@ -172,7 +172,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"ntr", "repeat"}, new List<string>() {"ntr", "repeat"},
"ntrcork", "en", "ntrcork", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 204
); );
} }
} }

View file

@ -106,7 +106,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "ctr", "normal" }, new List<string>() { "ctr", "normal" },
"ctrpillow", "en", "ctrpillow", "en",
new List<string>() {"en", "jp", "ko"} new List<string>() {"en", "jp", "ko"},
chronologicalSortKey: 66
); );
} }
} }

View file

@ -94,7 +94,8 @@ namespace HeavenStudio.Games.Loaders
defaultLength = 0.5f, defaultLength = 0.5f,
}, },
}, },
new List<string>() { "agb", "normal" }, "agbCalligraphy", "en", new List<string>() { } new List<string>() { "agb", "normal" }, "agbCalligraphy", "en", new List<string>() { },
chronologicalSortKey: 21
); );
} }
} }

View file

@ -113,7 +113,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"agb", "repeat"}, new List<string>() {"agb", "repeat"},
"agbquiz", "en", "agbquiz", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 19
); );
} }
} }

View file

@ -118,7 +118,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "ntr", "keep" }, new List<string>() { "ntr", "keep" },
"ntrpingpong", "en", "ntrpingpong", "en",
new List<string>() { } new List<string>() { },
chronologicalSortKey: 6
); );
} }
} }

View file

@ -48,7 +48,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "pco", "normal" }, new List<string>() { "pco", "normal" },
"pcosomen", "en", "pcosomen", "en",
new List<string>() { } new List<string>() { },
chronologicalSortKey: 20130101
); );
} }
} }

View file

@ -92,9 +92,10 @@ namespace HeavenStudio.Games.Loaders
}, },
}, },
new List<string>() {"abg", "aim"}, new List<string>() {"agb", "aim"},
"agbRhythmTestGBA", "en", "agbRhythmTestGBA", "en",
new List<string>() { "en" } new List<string>() { "en" },
chronologicalSortKey: 0
); );
} }
} }

View file

@ -104,7 +104,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"agb", "repeat"}, new List<string>() {"agb", "repeat"},
"agbhair", "en", "agbhair", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 2
); );
} }
} }

View file

@ -81,7 +81,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"rvl", "normal"}, new List<string>() {"rvl", "normal"},
"rvlinterview", "en", "rvlinterview", "en",
new List<string>() {"en"} new List<string>() {"en"},
chronologicalSortKey: 16
); );
} }
} }

View file

@ -288,7 +288,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "ntr", "repeat" }, new List<string>() { "ntr", "repeat" },
"ntrrockers", "en", "ntrrockers", "en",
new List<string>() { "en" } new List<string>() { "en" },
chronologicalSortKey: 28
); );
} }
} }

View file

@ -97,7 +97,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "ntr", "normal" }, new List<string>() { "ntr", "normal" },
"ntrsamurai", "en", "ntrsamurai", "en",
new List<string>() { "en" } new List<string>() { "en" },
chronologicalSortKey: 104
); );
} }
} }

View file

@ -122,7 +122,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"rvl", "normal", "keep"}, new List<string>() {"rvl", "normal", "keep"},
"rvlseesaw", "en", "rvlseesaw", "en",
new List<string>() {"en"} new List<string>() {"en"},
chronologicalSortKey: 3
); );
} }
} }

View file

@ -83,7 +83,8 @@ namespace HeavenStudio.Games.Loaders
} }
}, },
}, },
new List<string>() { "ntr", "normal" }, "ntrShootEmUp", "en", new List<string>() { } new List<string>() { "ntr", "normal" }, "ntrShootEmUp", "en", new List<string>() { },
chronologicalSortKey: 7
); );
} }
} }

View file

@ -88,7 +88,8 @@ namespace HeavenStudio.Games.Loaders
} }
}, },
}, },
new List<string>() { "agb", "normal" }, "agbSickBeats", "en", new List<string>() { } new List<string>() { "agb", "normal" }, "agbSickBeats", "en", new List<string>() { },
chronologicalSortKey: 10
); );
} }
} }

View file

@ -100,7 +100,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "ntr", "normal" }, new List<string>() { "ntr", "normal" },
"ntrslotmonster", "en", "ntrslotmonster", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 203
); );
} }
} }

View file

@ -58,7 +58,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"agb", "aim"}, new List<string>() {"agb", "aim"},
"agbghost", "en", "agbghost", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 7
); );
} }
} }

View file

@ -103,7 +103,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"agb", "normal"}, new List<string>() {"agb", "normal"},
"agbspacedance", "jp", "agbspacedance", "jp",
new List<string>() {"jp"} new List<string>() {"jp"},
chronologicalSortKey: 17
); );
} }
} }

View file

@ -151,7 +151,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "ntr", "keep" }, new List<string>() { "ntr", "keep" },
"ntrsoccer", "en", "ntrsoccer", "en",
new List<string>() { "en" } new List<string>() { "en" },
chronologicalSortKey: 26
); );
} }
} }

View file

@ -68,7 +68,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"agb", "normal"}, new List<string>() {"agb", "normal"},
"agbbatter", "en", "agbbatter", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 4
); );
} }
} }

View file

@ -75,7 +75,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "ntr", "normal" }, new List<string>() { "ntr", "normal" },
"ntrdiving", "en", "ntrdiving", "en",
new List<string>() { "en" } new List<string>() { "en" },
chronologicalSortKey: 21
); );
} }
} }

View file

@ -118,10 +118,11 @@ namespace HeavenStudio.Games.Loaders
resizable = true resizable = true
}, },
} },
//new List<string>() { "ctr", "keep" }, new List<string>() { "ctr", "keep" },
//"ctrsumou", "jp", //"ctrsumou", "jp",
//new List<string>() { } //new List<string>() { },
chronologicalSortKey: 31
); );
} }
} }

View file

@ -73,7 +73,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"rvl", "repeat"}, new List<string>() {"rvl", "repeat"},
"rvldrum", "en", "rvldrum", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 7
); );
} }
} }

View file

@ -85,7 +85,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "agb", "normal" }, new List<string>() { "agb", "normal" },
"agbtap", "en", "agbtap", "en",
new List<string>() { } new List<string>() { },
chronologicalSortKey: 29
); );
} }
} }

View file

@ -90,7 +90,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"rvl", "keep"}, new List<string>() {"rvl", "keep"},
"rvllegs", "en", "rvllegs", "en",
new List<string>() {"en"} new List<string>() {"en"},
chronologicalSortKey: 31
); );
} }
} }

View file

@ -119,7 +119,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"ntr", "normal"}, new List<string>() {"ntr", "normal"},
"ntrboxshow", "en", "ntrboxshow", "en",
new List<string>() {"en"} new List<string>() {"en"},
chronologicalSortKey: 14
); );
} }
} }

View file

@ -103,7 +103,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"agb", "normal"}, new List<string>() {"agb", "normal"},
"agbtoss", "jp", "agbtoss", "jp",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 27
); );
} }
} }

View file

@ -101,7 +101,8 @@ namespace HeavenStudio.Games.Loaders
resizable = true, resizable = true,
defaultLength = 4f defaultLength = 4f
} }
}); },
chronologicalSortKey: 20240127);
} }
} }
} }

View file

@ -71,7 +71,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"agb", "normal"}, new List<string>() {"agb", "normal"},
"agbtrampoline", "jp", "agbtrampoline", "jp",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 16
); );
} }
} }

View file

@ -101,7 +101,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "mob", "normal" }, new List<string>() { "mob", "normal" },
"mobtrick", "en", "mobtrick", "en",
new List<string>() { } new List<string>() { },
chronologicalSortKey: 20170124 // source: this sketchy site https://rhythm-heaven-fever.appstor.io/ it was the only mention of it online that had a date attached
); );
} }
} }

View file

@ -54,7 +54,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() { "ntr", "keep" }, new List<string>() { "ntr", "keep" },
"ntrtunnel", "en", "ntrtunnel", "en",
new List<string>() { "en" } new List<string>() { "en" },
chronologicalSortKey: 103
); );
} }
} }

View file

@ -39,7 +39,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"agb", "repeat"}, new List<string>() {"agb", "repeat"},
"agbwizard", "en", "agbwizard", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 13
); );
} }
} }

View file

@ -110,7 +110,8 @@ namespace HeavenStudio.Games.Loaders
}, },
new List<string>() {"rvl", "repeat"}, new List<string>() {"rvl", "repeat"},
"rvldough", "en", "rvldough", "en",
new List<string>() {} new List<string>() {},
chronologicalSortKey: 11
); );
} }
} }

View file

@ -11,6 +11,7 @@ using DG.Tweening;
using HeavenStudio.Util; using HeavenStudio.Util;
using HeavenStudio.Editor.Track; using HeavenStudio.Editor.Track;
using System.Text; using System.Text;
using System.Configuration;
namespace HeavenStudio.Editor namespace HeavenStudio.Editor
{ {
@ -258,35 +259,48 @@ namespace HeavenStudio.Editor
// sorts depending on which sorting button you click // sorts depending on which sorting button you click
public void Sort(string type) public void Sort(string type)
{ {
var mgsSort = mgsActive; List<RectTransform> mgsSort = mgsActive;
mgsSort.Sort((x, y) => string.Compare(x.name, y.name)); mgsSort.Sort((x, y) => string.Compare(x.name, y.name));
switch (type) switch (type)
{ {
case "favorites": case "favorites":
SortFavorites(mgsSort); SortFavorites(mgsSort);
break; break;
case "chronologic": case "chronologic":
SortChronologic(mgsSort); SortChronologic(mgsSort);
break; break;
case "usage":
SortUsage(mgsSort);
break;
default: // "alphabet" default: // "alphabet"
SortAlphabet(mgsSort); SortAlphabet(mgsSort);
break; break;
} }
} }
void SortAlphabet(List<RectTransform> mgs) void SortAlphabet(List<RectTransform> mgs)
{ {
for (int i = 0; i < mgsActive.Count; i++) { List<RectTransform> alph = mgs.OrderBy(AlphabetSortKey).ToList();
mgs[i].SetSiblingIndex(i + fxActive.Count + 1);
for (int i = 0; i < alph.Count; i++) {
alph[i].SetSiblingIndex(i + fxActive.Count + 1);
} }
} }
string AlphabetSortKey(RectTransform minigame)
{
Minigames.Minigame mg = EventCaller.instance.GetMinigame(minigame.name);
if (mg.displayName.StartsWith("the ", System.StringComparison.InvariantCultureIgnoreCase))
return mg.displayName[4..];
else
return mg.displayName;
}
// if there are no favorites, the games will sort alphabetically // if there are no favorites, the games will sort alphabetically
void SortFavorites(List<RectTransform> allMgs) void SortFavorites(List<RectTransform> allMgs)
{ {
var favs = allMgs.FindAll(mg => mg.GetComponent<GridGameSelectorGame>().StarActive); List<RectTransform> favs = allMgs.FindAll(mg => mg.GetComponent<GridGameSelectorGame>().StarActive).OrderBy(AlphabetSortKey).ToList();
var mgs = allMgs.FindAll(mg => !mg.GetComponent<GridGameSelectorGame>().StarActive); List<RectTransform> mgs = allMgs.FindAll(mg => !mg.GetComponent<GridGameSelectorGame>().StarActive).OrderBy(AlphabetSortKey).ToList();
if (Input.GetKey(KeyCode.LeftShift)) { if (Input.GetKey(KeyCode.LeftShift)) {
foreach (var fav in favs) foreach (var fav in favs)
@ -304,43 +318,49 @@ namespace HeavenStudio.Editor
void SortChronologic(List<RectTransform> mgs) void SortChronologic(List<RectTransform> mgs)
{ {
var systems = new List<RectTransform>[] { List<RectTransform> chrono = mgs.OrderBy(GameOriginSortKey).ThenBy(ChronologicSortKey).ThenBy(AlphabetSortKey).ToList();
new List<RectTransform>(),
new List<RectTransform>(), for (int i = 0; i < chrono.Count; i++) {
new List<RectTransform>(), chrono[i].SetSiblingIndex(i + fxActive.Count + 1);
new List<RectTransform>(),
new List<RectTransform>(),
new List<RectTransform>(),
};
for (int i = 0; i < mgs.Count; i++)
{
var mg = EventCaller.instance.GetMinigame(mgs[i].name);
var tags = mg.tags;
if (tags.Count != 0) {
systems[tags[0] switch {
"agb" => 0,
"ntr" => 1,
"rvl" => 2,
"ctr" => 3,
"mob" => 4,
_ => 5,
}].Add(mgs[i]);
} else if (mg.inferred) {
systems[^1].Add(mgs[i]);
} else {
Debug.LogWarning($"Chronological sorting has failed, does \"{mg.displayName}\" ({mg.name}) have an asset bundle assigned to it?");
}
} }
int j = fxActive.Count + 1; }
foreach (var system in systems) int GameOriginSortKey(RectTransform minigame)
{
Minigames.Minigame mg = EventCaller.instance.GetMinigame(minigame.name);
if (mg.tags.Count > 0)
{ {
system.OrderBy(mg => mg.name); return mg.tags[0] switch
for (int i = 0; i < system.Count; i++)
{ {
system[i].SetSiblingIndex(j); "agb" => 0,
j++; "ntr" => 1,
} "rvl" => 2,
"ctr" => 3,
_ => 10,
};
} }
return 10;
}
uint ChronologicSortKey(RectTransform minigame)
{
Minigames.Minigame mg = EventCaller.instance.GetMinigame(minigame.name);
if (mg.chronologicalSortKey is uint i)
return i;
return uint.MaxValue;
}
void SortUsage(List<RectTransform> mgs)
{
List<RectTransform> usage = mgs.OrderByDescending(UsageSortKey).ThenBy(AlphabetSortKey).ToList();
for (int i = 0; i < usage.Count; i++) {
usage[i].SetSiblingIndex(i + fxActive.Count + 1);
}
}
int UsageSortKey(RectTransform minigame)
{
return EventCaller.GetAllInGameManagerList(minigame.name).Count;
} }
public void Search() public void Search()

View file

@ -372,6 +372,15 @@ namespace HeavenStudio
public bool fxOnly; public bool fxOnly;
public List<GameAction> actions = new List<GameAction>(); public List<GameAction> actions = new List<GameAction>();
public uint? chronologicalSortKey;
// playinful: basically i figure this should just be whatever index number the minigame is
// in its game of origin. So, basically, like, if we're talking Rhythm Heaven DS, Built to
// Scale would be 1, then Fillbots would be 2, and so on. If it's an endless game, add 100.
// If it's a rhythm toy, add 200. If it's a 2-Player endless game, add 300. If it's a credits
// game... IDK, I guess just set it to 99. It works. If the game isn't a RH original then just
// put the date in YYYYMMDD format. Oh, and if it's a practice game set it to 0.
public List<string> tags; public List<string> tags;
public string defaultLocale = "en"; public string defaultLocale = "en";
public string wantAssetBundle = null; public string wantAssetBundle = null;
@ -405,7 +414,7 @@ namespace HeavenStudio
set => soundSequences = value; set => soundSequences = value;
} }
public Minigame(string name, string displayName, string color, bool hidden, bool fxOnly, List<GameAction> actions, List<string> tags = null, string wantAssetBundle = null, string defaultLocale = "en", List<string> supportedLocales = null, bool inferred = false) public Minigame(string name, string displayName, string color, bool hidden, bool fxOnly, List<GameAction> actions, List<string> tags = null, string wantAssetBundle = null, string defaultLocale = "en", List<string> supportedLocales = null, bool inferred = false, uint? chronologicalSortKey = null)
{ {
this.name = name; this.name = name;
this.displayName = displayName; this.displayName = displayName;
@ -422,9 +431,11 @@ namespace HeavenStudio
this.splitColorL = null; this.splitColorL = null;
this.splitColorR = null; this.splitColorR = null;
this.chronologicalSortKey = chronologicalSortKey;
} }
public Minigame(string name, string displayName, string color, string splitColorL, string splitColorR, bool hidden, bool fxOnly, List<GameAction> actions, List<string> tags = null, string wantAssetBundle = null, string defaultLocale = "en", List<string> supportedLocales = null, bool inferred = false) public Minigame(string name, string displayName, string color, string splitColorL, string splitColorR, bool hidden, bool fxOnly, List<GameAction> actions, List<string> tags = null, string wantAssetBundle = null, string defaultLocale = "en", List<string> supportedLocales = null, bool inferred = false, uint? chronologicalSortKey = null)
{ {
this.name = name; this.name = name;
this.displayName = displayName; this.displayName = displayName;
@ -441,6 +452,8 @@ namespace HeavenStudio
this.splitColorL = splitColorL; this.splitColorL = splitColorL;
this.splitColorR = splitColorR; this.splitColorR = splitColorR;
this.chronologicalSortKey = chronologicalSortKey;
} }
public AssetBundle GetLocalizedAssetBundle() public AssetBundle GetLocalizedAssetBundle()