mirror of
https://gitgud.io/AbstractConcept/rimworld-animation-studio.git
synced 2024-08-15 00:43:27 +00:00
Initial commit
This commit is contained in:
commit
3c7cc0c973
8391 changed files with 704313 additions and 0 deletions
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: c4fd7287681a95c45b52bf69246b3979
|
||||
folderAsset: yes
|
||||
timeCreated: 1501359915
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: aeafc7b05e4be084b9193c7a46e2e993
|
||||
folderAsset: yes
|
||||
timeCreated: 1501401900
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,148 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!687078895 &4343727234628468602
|
||||
SpriteAtlas:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Ocean
|
||||
m_EditorData:
|
||||
serializedVersion: 2
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
anisoLevel: 1
|
||||
compressionQuality: 50
|
||||
maxTextureSize: 2048
|
||||
textureCompression: 0
|
||||
filterMode: 0
|
||||
generateMipMaps: 0
|
||||
readable: 0
|
||||
crunchedCompression: 0
|
||||
sRGB: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
m_BuildTarget: DefaultTexturePlatform
|
||||
m_MaxTextureSize: 2048
|
||||
m_ResizeAlgorithm: 0
|
||||
m_TextureFormat: -1
|
||||
m_TextureCompression: 0
|
||||
m_CompressionQuality: 50
|
||||
m_CrunchedCompression: 0
|
||||
m_AllowsAlphaSplitting: 0
|
||||
m_Overridden: 0
|
||||
m_AndroidETC2FallbackOverride: 0
|
||||
m_ForceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
packingSettings:
|
||||
serializedVersion: 2
|
||||
padding: 4
|
||||
blockOffset: 1
|
||||
allowAlphaSplitting: 0
|
||||
enableRotation: 1
|
||||
enableTightPacking: 1
|
||||
variantMultiplier: 1
|
||||
packables:
|
||||
- {fileID: 2800000, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
totalSpriteSurfaceArea: 12288
|
||||
bindAsDefault: 1
|
||||
m_MasterAtlas: {fileID: 0}
|
||||
m_PackedSprites:
|
||||
- {fileID: 21300022, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300020, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300026, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300024, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300030, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300028, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300034, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300032, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300038, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300036, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300056, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300058, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300016, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300018, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300078, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300076, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300004, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300040, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300006, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300042, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300000, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300044, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300084, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300002, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300046, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300066, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300086, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300012, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300048, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300064, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300080, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300014, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300050, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300062, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300082, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300008, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300052, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300060, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300092, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300010, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300054, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300074, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300094, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300072, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300088, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300070, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300090, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300068, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_PackedSpriteNamesToIndex:
|
||||
- ocean_11
|
||||
- ocean_10
|
||||
- ocean_13
|
||||
- ocean_12
|
||||
- ocean_15
|
||||
- ocean_14
|
||||
- ocean_17
|
||||
- ocean_16
|
||||
- ocean_19
|
||||
- ocean_18
|
||||
- ocean_28
|
||||
- ocean_29
|
||||
- ocean_8
|
||||
- ocean_9
|
||||
- ocean_39
|
||||
- ocean_38
|
||||
- ocean_2
|
||||
- ocean_20
|
||||
- ocean_3
|
||||
- ocean_21
|
||||
- ocean_0
|
||||
- ocean_22
|
||||
- ocean_42
|
||||
- ocean_1
|
||||
- ocean_23
|
||||
- ocean_33
|
||||
- ocean_43
|
||||
- ocean_6
|
||||
- ocean_24
|
||||
- ocean_32
|
||||
- ocean_40
|
||||
- ocean_7
|
||||
- ocean_25
|
||||
- ocean_31
|
||||
- ocean_41
|
||||
- ocean_4
|
||||
- ocean_26
|
||||
- ocean_30
|
||||
- ocean_46
|
||||
- ocean_5
|
||||
- ocean_27
|
||||
- ocean_37
|
||||
- ocean_47
|
||||
- ocean_36
|
||||
- ocean_44
|
||||
- ocean_35
|
||||
- ocean_45
|
||||
- ocean_34
|
||||
m_Tag: Ocean
|
||||
m_IsVariant: 0
|
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: d282208e03c182143bd68d58caa469fc
|
||||
timeCreated: 1501401911
|
||||
licenseType: Pro
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 4343727234628468602
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: a6fab94d967673f4dadaf7d7dba5dbdd
|
||||
folderAsset: yes
|
||||
timeCreated: 1501359915
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Binary file not shown.
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0f76890bf837fae4aa565ffb26091b36
|
||||
timeCreated: 1501359915
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Binary file not shown.
After Width: | Height: | Size: 2 KiB |
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 03991bdd665f50a4ab4b4d0419bc3acd
|
||||
folderAsset: yes
|
||||
timeCreated: 1501359989
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,179 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: d746e0082aaaaf0458b2b02bb4d45a47, type: 3}
|
||||
m_Name: Ocean
|
||||
m_EditorClassIdentifier:
|
||||
m_DefaultSprite: {fileID: 21300000, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_DefaultColliderType: 1
|
||||
m_TilingRules:
|
||||
- m_Neighbors: 0000000001000000000000000200000002000000000000000200000000000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300002, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300010, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300018, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_AnimationSpeed: 1.5
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 2
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0000000001000000020000000200000001000000000000000200000000000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300004, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300012, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300020, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_AnimationSpeed: 1.5
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 2
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0000000001000000010000000200000001000000000000000200000000000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300006, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300014, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300022, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_AnimationSpeed: 1.5
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 2
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0000000001000000000000000200000002000000000000000100000000000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300024, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300032, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300040, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_AnimationSpeed: 1.5
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 2
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0000000001000000020000000200000001000000000000000100000002000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300026, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300034, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300042, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_AnimationSpeed: 1.5
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 2
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0000000001000000010000000200000001000000000000000100000002000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300028, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300036, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300044, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_AnimationSpeed: 1.5
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 2
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0000000001000000020000000200000001000000000000000100000001000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300030, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300038, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300046, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_AnimationSpeed: 1.5
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 2
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0000000001000000010000000200000001000000000000000100000001000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300048, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300056, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300064, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_AnimationSpeed: 1.5
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 2
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0200000001000000020000000100000001000000020000000100000002000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300050, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300058, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300066, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_AnimationSpeed: 1.5
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 2
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0200000001000000010000000100000001000000020000000100000002000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300052, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300060, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300068, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_AnimationSpeed: 1.5
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 2
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0200000001000000010000000100000001000000020000000100000001000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300054, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300062, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300070, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_AnimationSpeed: 1.5
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 2
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0200000001000000010000000100000001000000010000000100000002000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300072, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300080, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300088, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_AnimationSpeed: 1.5
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 2
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0200000001000000010000000100000001000000010000000100000001000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300074, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300082, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300090, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_AnimationSpeed: 1.5
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 2
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0100000001000000010000000100000001000000010000000100000001000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300076, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_AnimationSpeed: 1
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 0
|
||||
m_Output: 0
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0000000002000000000000000200000002000000000000000200000000000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300000, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300008, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
- {fileID: 21300016, guid: 1dbca277352d7e7438b1f9ba168025cc, type: 3}
|
||||
m_AnimationSpeed: 1.5
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 0
|
||||
m_Output: 2
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: a10819c4563bea64083e352e6653e073
|
||||
timeCreated: 1501359997
|
||||
licenseType: Pro
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 4289f5cd64d6bfe4896d9edc91c02df6
|
||||
folderAsset: yes
|
||||
timeCreated: 1501144364
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2b71014dff522bf418f43b19a50420a5
|
||||
folderAsset: yes
|
||||
timeCreated: 1501401958
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,82 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!687078895 &4343727234628468602
|
||||
SpriteAtlas:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Dungeon
|
||||
m_EditorData:
|
||||
serializedVersion: 2
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
anisoLevel: 1
|
||||
compressionQuality: 50
|
||||
maxTextureSize: 2048
|
||||
textureCompression: 0
|
||||
filterMode: 0
|
||||
generateMipMaps: 0
|
||||
readable: 0
|
||||
crunchedCompression: 0
|
||||
sRGB: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
m_BuildTarget: DefaultTexturePlatform
|
||||
m_MaxTextureSize: 2048
|
||||
m_ResizeAlgorithm: 0
|
||||
m_TextureFormat: -1
|
||||
m_TextureCompression: 0
|
||||
m_CompressionQuality: 50
|
||||
m_CrunchedCompression: 0
|
||||
m_AllowsAlphaSplitting: 0
|
||||
m_Overridden: 0
|
||||
m_AndroidETC2FallbackOverride: 0
|
||||
m_ForceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
packingSettings:
|
||||
serializedVersion: 2
|
||||
padding: 4
|
||||
blockOffset: 1
|
||||
allowAlphaSplitting: 0
|
||||
enableRotation: 1
|
||||
enableTightPacking: 1
|
||||
variantMultiplier: 1
|
||||
packables:
|
||||
- {fileID: 2800000, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
totalSpriteSurfaceArea: 3840
|
||||
bindAsDefault: 1
|
||||
m_MasterAtlas: {fileID: 0}
|
||||
m_PackedSprites:
|
||||
- {fileID: 21300060, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
- {fileID: 21300054, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
- {fileID: 21300052, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
- {fileID: 21300058, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
- {fileID: 21300056, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
- {fileID: 21300044, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
- {fileID: 21300046, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
- {fileID: 21300040, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
- {fileID: 21300042, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
- {fileID: 21300036, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
- {fileID: 21300038, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
- {fileID: 21300032, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
- {fileID: 21300034, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
- {fileID: 21300048, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
- {fileID: 21300050, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_PackedSpriteNamesToIndex:
|
||||
- dungeon_14
|
||||
- dungeon_11
|
||||
- dungeon_10
|
||||
- dungeon_13
|
||||
- dungeon_12
|
||||
- dungeon_6
|
||||
- dungeon_7
|
||||
- dungeon_4
|
||||
- dungeon_5
|
||||
- dungeon_2
|
||||
- dungeon_3
|
||||
- dungeon_0
|
||||
- dungeon_1
|
||||
- dungeon_8
|
||||
- dungeon_9
|
||||
m_Tag: Dungeon
|
||||
m_IsVariant: 0
|
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 4bef31d7092412c4b8c3b9da120b8a74
|
||||
timeCreated: 1501401977
|
||||
licenseType: Pro
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 4343727234628468602
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 28ff1e2346a2da04b904f0d47e5baae9
|
||||
folderAsset: yes
|
||||
timeCreated: 1501144364
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Binary file not shown.
After Width: | Height: | Size: 860 B |
|
@ -0,0 +1,719 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 5c4f1fa01d076b0448a9438531d30a91
|
||||
TextureImporter:
|
||||
internalIDToNameTable:
|
||||
- first:
|
||||
213: 21300000
|
||||
second: cave_0
|
||||
- first:
|
||||
213: 21300002
|
||||
second: cave_1
|
||||
- first:
|
||||
213: 21300004
|
||||
second: cave_2
|
||||
- first:
|
||||
213: 21300006
|
||||
second: cave_3
|
||||
- first:
|
||||
213: 21300008
|
||||
second: cave_4
|
||||
- first:
|
||||
213: 21300010
|
||||
second: cave_5
|
||||
- first:
|
||||
213: 21300012
|
||||
second: cave_6
|
||||
- first:
|
||||
213: 21300014
|
||||
second: cave_7
|
||||
- first:
|
||||
213: 21300016
|
||||
second: cave_8
|
||||
- first:
|
||||
213: 21300018
|
||||
second: cave_9
|
||||
- first:
|
||||
213: 21300020
|
||||
second: cave_10
|
||||
- first:
|
||||
213: 21300022
|
||||
second: cave_11
|
||||
- first:
|
||||
213: 21300024
|
||||
second: cave_12
|
||||
- first:
|
||||
213: 21300026
|
||||
second: cave_13
|
||||
- first:
|
||||
213: 21300028
|
||||
second: cave_14
|
||||
- first:
|
||||
213: 21300030
|
||||
second: cave_15
|
||||
- first:
|
||||
213: 21300032
|
||||
second: dungeon_0
|
||||
- first:
|
||||
213: 21300034
|
||||
second: dungeon_1
|
||||
- first:
|
||||
213: 21300036
|
||||
second: dungeon_2
|
||||
- first:
|
||||
213: 21300038
|
||||
second: dungeon_3
|
||||
- first:
|
||||
213: 21300040
|
||||
second: dungeon_4
|
||||
- first:
|
||||
213: 21300042
|
||||
second: dungeon_5
|
||||
- first:
|
||||
213: 21300044
|
||||
second: dungeon_6
|
||||
- first:
|
||||
213: 21300046
|
||||
second: dungeon_7
|
||||
- first:
|
||||
213: 21300048
|
||||
second: dungeon_8
|
||||
- first:
|
||||
213: 21300050
|
||||
second: dungeon_9
|
||||
- first:
|
||||
213: 21300052
|
||||
second: dungeon_10
|
||||
- first:
|
||||
213: 21300054
|
||||
second: dungeon_11
|
||||
- first:
|
||||
213: 21300056
|
||||
second: dungeon_12
|
||||
- first:
|
||||
213: 21300058
|
||||
second: dungeon_13
|
||||
- first:
|
||||
213: 21300060
|
||||
second: dungeon_14
|
||||
externalObjects: {}
|
||||
serializedVersion: 10
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 0
|
||||
aniso: -1
|
||||
mipBias: -100
|
||||
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: 16
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: iPhone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: tvOS
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: PSP2
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: PS4
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: WiiU
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 0
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites:
|
||||
- serializedVersion: 2
|
||||
name: dungeon_0
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 48
|
||||
width: 16
|
||||
height: 16
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape:
|
||||
- - {x: -8, y: 3}
|
||||
- {x: -8, y: 8}
|
||||
- {x: 8, y: 8}
|
||||
- {x: 8, y: 3}
|
||||
- - {x: 3, y: -8}
|
||||
- {x: 3, y: 3}
|
||||
- {x: 8, y: 3}
|
||||
- {x: 8, y: -8}
|
||||
- - {x: -8, y: -8}
|
||||
- {x: -8, y: 3}
|
||||
- {x: -3, y: 3}
|
||||
- {x: -3, y: -8}
|
||||
- - {x: -3, y: -8}
|
||||
- {x: -3, y: -3}
|
||||
- {x: 3, y: -3}
|
||||
- {x: 3, y: -8}
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 98dd2f0cc97d04d67993027d70ca1f0d
|
||||
internalID: 21300032
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: dungeon_1
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 16
|
||||
y: 48
|
||||
width: 16
|
||||
height: 16
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape:
|
||||
- - {x: -8, y: -3}
|
||||
- {x: -8, y: 8}
|
||||
- {x: -3, y: 8}
|
||||
- {x: -3, y: -3}
|
||||
- - {x: 3, y: -3}
|
||||
- {x: 3, y: 8}
|
||||
- {x: 8, y: 8}
|
||||
- {x: 8, y: -3}
|
||||
- - {x: -8, y: -8}
|
||||
- {x: -8, y: -3}
|
||||
- {x: 8, y: -3}
|
||||
- {x: 8, y: -8}
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: a6d3f46a3951b49ce88108f99e4c5b0a
|
||||
internalID: 21300034
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: dungeon_2
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 32
|
||||
y: 48
|
||||
width: 16
|
||||
height: 16
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape:
|
||||
- - {x: -8, y: -8}
|
||||
- {x: -8, y: 8}
|
||||
- {x: -3, y: 8}
|
||||
- {x: -3, y: -8}
|
||||
- - {x: -3, y: -8}
|
||||
- {x: -3, y: -3}
|
||||
- {x: 8, y: -3}
|
||||
- {x: 8, y: -8}
|
||||
- - {x: 3, y: 3}
|
||||
- {x: 3, y: 8}
|
||||
- {x: 8, y: 8}
|
||||
- {x: 8, y: 3}
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: a8e860e33e053416ba6e97b5a5066fac
|
||||
internalID: 21300036
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: dungeon_3
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 48
|
||||
y: 48
|
||||
width: 16
|
||||
height: 16
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape:
|
||||
- - {x: -8, y: -8}
|
||||
- {x: -8, y: 8}
|
||||
- {x: -3, y: 8}
|
||||
- {x: -3, y: -8}
|
||||
- - {x: -3, y: -8}
|
||||
- {x: -3, y: -3}
|
||||
- {x: 8, y: -3}
|
||||
- {x: 8, y: -8}
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: eb7106c6a7cc5465691583699d19c3a9
|
||||
internalID: 21300038
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: dungeon_4
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 32
|
||||
width: 16
|
||||
height: 16
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape:
|
||||
- - {x: -8, y: -8}
|
||||
- {x: -8, y: 8}
|
||||
- {x: -3, y: 8}
|
||||
- {x: -3, y: -8}
|
||||
- - {x: 3, y: -8}
|
||||
- {x: 3, y: 8}
|
||||
- {x: 8, y: 8}
|
||||
- {x: 8, y: -8}
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 442311aeaeedb4ec8b28de86bc9dc634
|
||||
internalID: 21300040
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: dungeon_5
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 16
|
||||
y: 32
|
||||
width: 16
|
||||
height: 16
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape:
|
||||
- - {x: -8, y: -8}
|
||||
- {x: -8, y: 8}
|
||||
- {x: -3, y: 8}
|
||||
- {x: -3, y: -8}
|
||||
- - {x: 3, y: 3}
|
||||
- {x: 3, y: 8}
|
||||
- {x: 8, y: 8}
|
||||
- {x: 8, y: 3}
|
||||
- - {x: 3, y: -8}
|
||||
- {x: 3, y: -3}
|
||||
- {x: 8, y: -3}
|
||||
- {x: 8, y: -8}
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 306b2c54033d84ea09e11efc82977714
|
||||
internalID: 21300042
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: dungeon_6
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 32
|
||||
y: 32
|
||||
width: 16
|
||||
height: 16
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape:
|
||||
- - {x: 3, y: -8}
|
||||
- {x: 3, y: -3}
|
||||
- {x: 8, y: -3}
|
||||
- {x: 8, y: -8}
|
||||
- - {x: -8, y: -8}
|
||||
- {x: -8, y: 8}
|
||||
- {x: -3, y: 8}
|
||||
- {x: -3, y: -8}
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 601365b72d1dd489783d58e59bf4bca8
|
||||
internalID: 21300044
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: dungeon_7
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 48
|
||||
y: 32
|
||||
width: 16
|
||||
height: 16
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape:
|
||||
- - {x: 3, y: 3}
|
||||
- {x: 3, y: 8}
|
||||
- {x: 8, y: 8}
|
||||
- {x: 8, y: 3}
|
||||
- - {x: -8, y: -8}
|
||||
- {x: -8, y: 8}
|
||||
- {x: -3, y: 8}
|
||||
- {x: -3, y: -8}
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 3ffd720f3c7274bc68593f6a5fdb8025
|
||||
internalID: 21300046
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: dungeon_8
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 16
|
||||
width: 16
|
||||
height: 16
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape:
|
||||
- - {x: -8, y: -8}
|
||||
- {x: -8, y: 8}
|
||||
- {x: -3, y: 8}
|
||||
- {x: -3, y: -8}
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 30849cdd6847044d09ab6701dfee75d7
|
||||
internalID: 21300048
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: dungeon_9
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 16
|
||||
y: 16
|
||||
width: 16
|
||||
height: 16
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape:
|
||||
- - {x: -8, y: 3}
|
||||
- {x: -8, y: 8}
|
||||
- {x: -3, y: 8}
|
||||
- {x: -3, y: 3}
|
||||
- - {x: -8, y: -8}
|
||||
- {x: -8, y: -3}
|
||||
- {x: -3, y: -3}
|
||||
- {x: -3, y: -8}
|
||||
- - {x: 3, y: -8}
|
||||
- {x: 3, y: -3}
|
||||
- {x: 8, y: -3}
|
||||
- {x: 8, y: -8}
|
||||
- - {x: 3, y: 3}
|
||||
- {x: 3, y: 8}
|
||||
- {x: 8, y: 8}
|
||||
- {x: 8, y: 3}
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: a3804f4cd95994ff88ada9572fa7f1ff
|
||||
internalID: 21300050
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: dungeon_10
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 32
|
||||
y: 16
|
||||
width: 16
|
||||
height: 16
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape:
|
||||
- - {x: -8, y: 3}
|
||||
- {x: -8, y: 8}
|
||||
- {x: -3, y: 8}
|
||||
- {x: -3, y: 3}
|
||||
- - {x: 3, y: -8}
|
||||
- {x: 3, y: -3}
|
||||
- {x: 8, y: -3}
|
||||
- {x: 8, y: -8}
|
||||
- - {x: -8, y: -8}
|
||||
- {x: -8, y: -3}
|
||||
- {x: -3, y: -3}
|
||||
- {x: -3, y: -8}
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 78a9b291558f64a2e8d1f0233b8bad3b
|
||||
internalID: 21300052
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: dungeon_11
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 48
|
||||
y: 16
|
||||
width: 16
|
||||
height: 16
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape:
|
||||
- - {x: -8, y: -8}
|
||||
- {x: -8, y: -3}
|
||||
- {x: -3, y: -3}
|
||||
- {x: -3, y: -8}
|
||||
- - {x: -8, y: 3}
|
||||
- {x: -8, y: 8}
|
||||
- {x: -3, y: 8}
|
||||
- {x: -3, y: 3}
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 2bd996e3ae2dc4b658d0bacdf50de601
|
||||
internalID: 21300054
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: dungeon_12
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 16
|
||||
height: 16
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape:
|
||||
- - {x: -8, y: 3}
|
||||
- {x: -8, y: 8}
|
||||
- {x: -3, y: 8}
|
||||
- {x: -3, y: 3}
|
||||
- - {x: 3, y: -8}
|
||||
- {x: 3, y: -3}
|
||||
- {x: 8, y: -3}
|
||||
- {x: 8, y: -8}
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 761482104e64d4c818c321aecc3aa699
|
||||
internalID: 21300056
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: dungeon_13
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 16
|
||||
y: 0
|
||||
width: 16
|
||||
height: 16
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape:
|
||||
- - {x: -8, y: 3}
|
||||
- {x: -8, y: 8}
|
||||
- {x: -3, y: 8}
|
||||
- {x: -3, y: 3}
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 60820baf3802e4ab18a615dbb2dc46a2
|
||||
internalID: 21300058
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
- serializedVersion: 2
|
||||
name: dungeon_14
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 32
|
||||
y: 0
|
||||
width: 16
|
||||
height: 16
|
||||
alignment: 0
|
||||
pivot: {x: 0.5, y: 0.5}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
outline: []
|
||||
physicsShape: []
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 946ea6977e9e444c390706b7db3c4ff5
|
||||
internalID: 21300060
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 533b5ec7bf25c4878bea7578e7d682fa
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: db45e7ef29f4bec4595184f0752dfab5
|
||||
folderAsset: yes
|
||||
timeCreated: 1501144414
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,142 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: d746e0082aaaaf0458b2b02bb4d45a47, type: 3}
|
||||
m_Name: Cave
|
||||
m_EditorClassIdentifier:
|
||||
m_DefaultSprite: {fileID: 21300032, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_DefaultColliderType: 1
|
||||
m_TilingRules:
|
||||
- m_Neighbors: 0000000001000000000000000200000002000000000000000200000000000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300034, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_AnimationSpeed: 1
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 0
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0000000001000000020000000200000001000000000000000200000000000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300036, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_AnimationSpeed: 1
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 0
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0000000001000000010000000200000001000000000000000200000000000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300038, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_AnimationSpeed: 1
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 0
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0000000001000000000000000200000002000000000000000100000000000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300040, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_AnimationSpeed: 1
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 0
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0000000001000000020000000200000001000000000000000100000002000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300042, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_AnimationSpeed: 1
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 0
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0000000001000000000000000200000001000000000000000100000002000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300044, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_AnimationSpeed: 1
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 0
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0000000001000000020000000200000001000000000000000100000000000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300046, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_AnimationSpeed: 1
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 0
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0000000001000000010000000200000001000000000000000100000001000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300048, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_AnimationSpeed: 1
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 0
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0200000001000000020000000100000001000000020000000100000002000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300050, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_AnimationSpeed: 1
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 0
|
||||
m_Output: 0
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0200000001000000010000000100000001000000020000000100000002000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300052, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_AnimationSpeed: 1
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 0
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0200000001000000010000000100000001000000020000000100000001000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300054, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_AnimationSpeed: 1
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 0
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0200000001000000010000000100000001000000010000000100000002000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300056, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_AnimationSpeed: 1
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 0
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0200000001000000010000000100000001000000010000000100000001000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300058, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_AnimationSpeed: 1
|
||||
m_PerlinScale: 0.5
|
||||
m_RuleTransform: 1
|
||||
m_Output: 0
|
||||
m_ColliderType: 1
|
||||
m_RandomTransform: 0
|
||||
- m_Neighbors: 0100000001000000010000000100000001000000010000000100000001000000
|
||||
m_Sprites:
|
||||
- {fileID: 21300060, guid: 5c4f1fa01d076b0448a9438531d30a91, type: 3}
|
||||
m_AnimationSpeed: 1
|
||||
m_PerlinScale: 0.915
|
||||
m_RuleTransform: 0
|
||||
m_Output: 0
|
||||
m_ColliderType: 0
|
||||
m_RandomTransform: 0
|
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b2f84e66a5337c541ad85c2b6fac913e
|
||||
timeCreated: 1501144419
|
||||
licenseType: Pro
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e3dfd2d84bd19e940a1eaf932c37c072
|
||||
folderAsset: yes
|
||||
timeCreated: 1500914360
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,10 @@
|
|||
fileFormatVersion: 2
|
||||
guid: c1cbbd5ac8fed1a4087cbe4fbee0d570
|
||||
folderAsset: yes
|
||||
timeCreated: 1501821930
|
||||
licenseType: Free
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,350 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Reflection;
|
||||
using UnityEditor.Sprites;
|
||||
using UnityEditorInternal;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Networking;
|
||||
using UnityEngine.Tilemaps;
|
||||
using Object = UnityEngine.Object;
|
||||
|
||||
namespace UnityEditor
|
||||
{
|
||||
[CustomEditor(typeof(RuleTile))]
|
||||
[CanEditMultipleObjects]
|
||||
internal class RuleTileEditor : Editor
|
||||
{
|
||||
private const string s_XIconString = "iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAABoSURBVDhPnY3BDcAgDAOZhS14dP1O0x2C/LBEgiNSHvfwyZabmV0jZRUpq2zi6f0DJwdcQOEdwwDLypF0zHLMa9+NQRxkQ+ACOT2STVw/q8eY1346ZlE54sYAhVhSDrjwFymrSFnD2gTZpls2OvFUHAAAAABJRU5ErkJggg==";
|
||||
private const string s_Arrow0 = "iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAACYSURBVDhPzZExDoQwDATzE4oU4QXXcgUFj+YxtETwgpMwXuFcwMFSRMVKKwzZcWzhiMg91jtg34XIntkre5EaT7yjjhI9pOD5Mw5k2X/DdUwFr3cQ7Pu23E/BiwXyWSOxrNqx+ewnsayam5OLBtbOGPUM/r93YZL4/dhpR/amwByGFBz170gNChA6w5bQQMqramBTgJ+Z3A58WuWejPCaHQAAAABJRU5ErkJggg==";
|
||||
private const string s_Arrow1 = "iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAABqSURBVDhPxYzBDYAgEATpxYcd+PVr0fZ2siZrjmMhFz6STIiDs8XMlpEyi5RkO/d66TcgJUB43JfNBqRkSEYDnYjhbKD5GIUkDqRDwoH3+NgTAw+bL/aoOP4DOgH+iwECEt+IlFmkzGHlAYKAWF9R8zUnAAAAAElFTkSuQmCC";
|
||||
private const string s_Arrow2 = "iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAC0SURBVDhPjVE5EsIwDMxPKFKYF9CagoJH8xhaMskLmEGsjOSRkBzYmU2s9a58TUQUmCH1BWEHweuKP+D8tphrWcAHuIGrjPnPNY8X2+DzEWE+FzrdrkNyg2YGNNfRGlyOaZDJOxBrDhgOowaYW8UW0Vau5ZkFmXbbDr+CzOHKmLinAXMEePyZ9dZkZR+s5QX2O8DY3zZ/sgYcdDqeEVp8516o0QQV1qeMwg6C91toYoLoo+kNt/tpKQEVvFQAAAAASUVORK5CYII=";
|
||||
private const string s_Arrow3 = "iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAB2SURBVDhPzY1LCoAwEEPnLi48gW5d6p31bH5SMhp0Cq0g+CCLxrzRPqMZ2pRqKG4IqzJc7JepTlbRZXYpWTg4RZE1XAso8VHFKNhQuTjKtZvHUNCEMogO4K3BhvMn9wP4EzoPZ3n0AGTW5fiBVzLAAYTP32C2Ay3agtu9V/9PAAAAAElFTkSuQmCC";
|
||||
private const string s_Arrow5 = "iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAABqSURBVDhPnY3BCYBADASvFx924NevRdvbyoLBmNuDJQMDGjNxAFhK1DyUQ9fvobCdO+j7+sOKj/uSB+xYHZAxl7IR1wNTXJeVcaAVU+614uWfCT9mVUhknMlxDokd15BYsQrJFHeUQ0+MB5ErsPi/6hO1AAAAAElFTkSuQmCC";
|
||||
private const string s_Arrow6 = "iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAACaSURBVDhPxZExEkAwEEVzE4UiTqClUDi0w2hlOIEZsV82xCZmQuPPfFn8t1mirLWf7S5flQOXjd64vCuEKWTKVt+6AayH3tIa7yLg6Qh2FcKFB72jBgJeziA1CMHzeaNHjkfwnAK86f3KUafU2ClHIJSzs/8HHLv09M3SaMCxS7ljw/IYJWzQABOQZ66x4h614ahTCL/WT7BSO51b5Z5hSx88AAAAAElFTkSuQmCC";
|
||||
private const string s_Arrow7 = "iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAABQSURBVDhPYxh8QNle/T8U/4MKEQdAmsz2eICx6W530gygr2aQBmSMphkZYxqErAEXxusKfAYQ7XyyNMIAsgEkaYQBkAFkaYQBsjXSGDAwAAD193z4luKPrAAAAABJRU5ErkJggg==";
|
||||
private const string s_Arrow8 = "iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAACYSURBVDhPxZE9DoAwCIW9iUOHegJXHRw8tIdx1egJTMSHAeMPaHSR5KVQ+KCkCRF91mdz4VDEWVzXTBgg5U1N5wahjHzXS3iFFVRxAygNVaZxJ6VHGIl2D6oUXP0ijlJuTp724FnID1Lq7uw2QM5+thoKth0N+GGyA7IA3+yM77Ag1e2zkey5gCdAg/h8csy+/89v7E+YkgUntOWeVt2SfAAAAABJRU5ErkJggg==";
|
||||
private const string s_MirrorX = "iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwQAADsEBuJFr7QAAABh0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC41ZYUyZQAAAG1JREFUOE+lj9ENwCAIRB2IFdyRfRiuDSaXAF4MrR9P5eRhHGb2Gxp2oaEjIovTXSrAnPNx6hlgyCZ7o6omOdYOldGIZhAziEmOTSfigLV0RYAB9y9f/7kO8L3WUaQyhCgz0dmCL9CwCw172HgBeyG6oloC8fAAAAAASUVORK5CYII=";
|
||||
private const string s_MirrorY = "iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABh0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC41ZYUyZQAAAG9JREFUOE+djckNACEMAykoLdAjHbPyw1IOJ0L7mAejjFlm9hspyd77Kk+kBAjPOXcakJIh6QaKyOE0EB5dSPJAiUmOiL8PMVGxugsP/0OOib8vsY8yYwy6gRyC8CB5QIWgCMKBLgRSkikEUr5h6wOPWfMoCYILdgAAAABJRU5ErkJggg==";
|
||||
private const string s_Rotated = "iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwQAADsEBuJFr7QAAABh0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC41ZYUyZQAAAHdJREFUOE+djssNwCAMQxmIFdgx+2S4Vj4YxWlQgcOT8nuG5u5C732Sd3lfLlmPMR4QhXgrTQaimUlA3EtD+CJlBuQ7aUAUMjEAv9gWCQNEPhHJUkYfZ1kEpcxDzioRzGIlr0Qwi0r+Q5rTgM+AAVcygHgt7+HtBZs/2QVWP8ahAAAAAElFTkSuQmCC";
|
||||
|
||||
private static Texture2D[] s_Arrows;
|
||||
public static Texture2D[] arrows
|
||||
{
|
||||
get
|
||||
{
|
||||
if (s_Arrows == null)
|
||||
{
|
||||
s_Arrows = new Texture2D[10];
|
||||
s_Arrows[0] = Base64ToTexture(s_Arrow0);
|
||||
s_Arrows[1] = Base64ToTexture(s_Arrow1);
|
||||
s_Arrows[2] = Base64ToTexture(s_Arrow2);
|
||||
s_Arrows[3] = Base64ToTexture(s_Arrow3);
|
||||
s_Arrows[5] = Base64ToTexture(s_Arrow5);
|
||||
s_Arrows[6] = Base64ToTexture(s_Arrow6);
|
||||
s_Arrows[7] = Base64ToTexture(s_Arrow7);
|
||||
s_Arrows[8] = Base64ToTexture(s_Arrow8);
|
||||
s_Arrows[9] = Base64ToTexture(s_XIconString);
|
||||
}
|
||||
return s_Arrows;
|
||||
}
|
||||
}
|
||||
|
||||
private static Texture2D[] s_AutoTransforms;
|
||||
public static Texture2D[] autoTransforms
|
||||
{
|
||||
get
|
||||
{
|
||||
if (s_AutoTransforms == null)
|
||||
{
|
||||
s_AutoTransforms = new Texture2D[3];
|
||||
s_AutoTransforms[0] = Base64ToTexture(s_Rotated);
|
||||
s_AutoTransforms[1] = Base64ToTexture(s_MirrorX);
|
||||
s_AutoTransforms[2] = Base64ToTexture(s_MirrorY);
|
||||
}
|
||||
return s_AutoTransforms;
|
||||
}
|
||||
}
|
||||
|
||||
private ReorderableList m_ReorderableList;
|
||||
public RuleTile tile { get { return (target as RuleTile); } }
|
||||
private Rect m_ListRect;
|
||||
|
||||
const float k_DefaultElementHeight = 48f;
|
||||
const float k_PaddingBetweenRules = 13f;
|
||||
const float k_SingleLineHeight = 16f;
|
||||
const float k_LabelWidth = 53f;
|
||||
|
||||
public void OnEnable()
|
||||
{
|
||||
if (tile.m_TilingRules == null)
|
||||
tile.m_TilingRules = new List<RuleTile.TilingRule>();
|
||||
|
||||
m_ReorderableList = new ReorderableList(tile.m_TilingRules, typeof(RuleTile.TilingRule), true, true, true, true);
|
||||
m_ReorderableList.drawHeaderCallback = OnDrawHeader;
|
||||
m_ReorderableList.drawElementCallback = OnDrawElement;
|
||||
m_ReorderableList.elementHeightCallback = GetElementHeight;
|
||||
m_ReorderableList.onReorderCallback = ListUpdated;
|
||||
}
|
||||
|
||||
private void ListUpdated(ReorderableList list)
|
||||
{
|
||||
SaveTile();
|
||||
}
|
||||
|
||||
private float GetElementHeight(int index)
|
||||
{
|
||||
if (tile.m_TilingRules != null && tile.m_TilingRules.Count > 0)
|
||||
{
|
||||
switch (tile.m_TilingRules[index].m_Output)
|
||||
{
|
||||
case RuleTile.TilingRule.OutputSprite.Random:
|
||||
return k_DefaultElementHeight + k_SingleLineHeight*(tile.m_TilingRules[index].m_Sprites.Length + 3) + k_PaddingBetweenRules;
|
||||
case RuleTile.TilingRule.OutputSprite.Animation:
|
||||
return k_DefaultElementHeight + k_SingleLineHeight*(tile.m_TilingRules[index].m_Sprites.Length + 2) + k_PaddingBetweenRules;
|
||||
}
|
||||
}
|
||||
return k_DefaultElementHeight + k_PaddingBetweenRules;
|
||||
}
|
||||
|
||||
private void OnDrawElement(Rect rect, int index, bool isactive, bool isfocused)
|
||||
{
|
||||
RuleTile.TilingRule rule = tile.m_TilingRules[index];
|
||||
|
||||
float yPos = rect.yMin + 2f;
|
||||
float height = rect.height - k_PaddingBetweenRules;
|
||||
float matrixWidth = k_DefaultElementHeight;
|
||||
|
||||
Rect inspectorRect = new Rect(rect.xMin, yPos, rect.width - matrixWidth * 2f - 20f, height);
|
||||
Rect matrixRect = new Rect(rect.xMax - matrixWidth * 2f - 10f, yPos, matrixWidth, k_DefaultElementHeight);
|
||||
Rect spriteRect = new Rect(rect.xMax - matrixWidth - 5f, yPos, matrixWidth, k_DefaultElementHeight);
|
||||
|
||||
EditorGUI.BeginChangeCheck();
|
||||
RuleInspectorOnGUI(inspectorRect, rule);
|
||||
RuleMatrixOnGUI(matrixRect, rule);
|
||||
SpriteOnGUI(spriteRect, rule);
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
SaveTile();
|
||||
}
|
||||
|
||||
private void SaveTile()
|
||||
{
|
||||
EditorUtility.SetDirty(target);
|
||||
SceneView.RepaintAll();
|
||||
}
|
||||
|
||||
private void OnDrawHeader(Rect rect)
|
||||
{
|
||||
GUI.Label(rect, "Tiling Rules");
|
||||
}
|
||||
|
||||
public override void OnInspectorGUI()
|
||||
{
|
||||
tile.m_DefaultSprite = EditorGUILayout.ObjectField("Default Sprite", tile.m_DefaultSprite, typeof(Sprite), false) as Sprite;
|
||||
tile.m_DefaultColliderType = (Tile.ColliderType)EditorGUILayout.EnumPopup("Default Collider", tile.m_DefaultColliderType);
|
||||
EditorGUILayout.Space();
|
||||
|
||||
if (m_ReorderableList != null && tile.m_TilingRules != null)
|
||||
m_ReorderableList.DoLayoutList();
|
||||
}
|
||||
|
||||
private static void RuleMatrixOnGUI(Rect rect, RuleTile.TilingRule tilingRule)
|
||||
{
|
||||
Handles.color = EditorGUIUtility.isProSkin ? new Color(1f, 1f, 1f, 0.2f) : new Color(0f, 0f, 0f, 0.2f);
|
||||
int index = 0;
|
||||
float w = rect.width / 3f;
|
||||
float h = rect.height / 3f;
|
||||
|
||||
for (int y = 0; y <= 3; y++)
|
||||
{
|
||||
float top = rect.yMin + y * h;
|
||||
Handles.DrawLine(new Vector3(rect.xMin, top), new Vector3(rect.xMax, top));
|
||||
}
|
||||
for (int x = 0; x <= 3; x++)
|
||||
{
|
||||
float left = rect.xMin + x * w;
|
||||
Handles.DrawLine(new Vector3(left, rect.yMin), new Vector3(left, rect.yMax));
|
||||
}
|
||||
Handles.color = Color.white;
|
||||
|
||||
for (int y = 0; y <= 2; y++)
|
||||
{
|
||||
for (int x = 0; x <= 2; x++)
|
||||
{
|
||||
Rect r = new Rect(rect.xMin + x * w, rect.yMin + y * h, w - 1, h - 1);
|
||||
if (x != 1 || y != 1)
|
||||
{
|
||||
switch (tilingRule.m_Neighbors[index])
|
||||
{
|
||||
case RuleTile.TilingRule.Neighbor.This:
|
||||
GUI.DrawTexture(r, arrows[y*3 + x]);
|
||||
break;
|
||||
case RuleTile.TilingRule.Neighbor.NotThis:
|
||||
GUI.DrawTexture(r, arrows[9]);
|
||||
break;
|
||||
}
|
||||
if (Event.current.type == EventType.MouseDown && r.Contains(Event.current.mousePosition))
|
||||
{
|
||||
tilingRule.m_Neighbors[index] = (RuleTile.TilingRule.Neighbor) (((int)tilingRule.m_Neighbors[index] + 1) % 3);
|
||||
GUI.changed = true;
|
||||
Event.current.Use();
|
||||
}
|
||||
|
||||
index++;
|
||||
}
|
||||
else
|
||||
{
|
||||
switch (tilingRule.m_RuleTransform)
|
||||
{
|
||||
case RuleTile.TilingRule.Transform.Rotated:
|
||||
GUI.DrawTexture(r, autoTransforms[0]);
|
||||
break;
|
||||
case RuleTile.TilingRule.Transform.MirrorX:
|
||||
GUI.DrawTexture(r, autoTransforms[1]);
|
||||
break;
|
||||
case RuleTile.TilingRule.Transform.MirrorY:
|
||||
GUI.DrawTexture(r, autoTransforms[2]);
|
||||
break;
|
||||
}
|
||||
|
||||
if (Event.current.type == EventType.MouseDown && r.Contains(Event.current.mousePosition))
|
||||
{
|
||||
tilingRule.m_RuleTransform = (RuleTile.TilingRule.Transform)(((int)tilingRule.m_RuleTransform + 1) % 4);
|
||||
GUI.changed = true;
|
||||
Event.current.Use();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static void OnSelect(object userdata)
|
||||
{
|
||||
MenuItemData data = (MenuItemData) userdata;
|
||||
data.m_Rule.m_RuleTransform = data.m_NewValue;
|
||||
}
|
||||
|
||||
private class MenuItemData
|
||||
{
|
||||
public RuleTile.TilingRule m_Rule;
|
||||
public RuleTile.TilingRule.Transform m_NewValue;
|
||||
|
||||
public MenuItemData(RuleTile.TilingRule mRule, RuleTile.TilingRule.Transform mNewValue)
|
||||
{
|
||||
this.m_Rule = mRule;
|
||||
this.m_NewValue = mNewValue;
|
||||
}
|
||||
}
|
||||
|
||||
private void SpriteOnGUI(Rect rect, RuleTile.TilingRule tilingRule)
|
||||
{
|
||||
tilingRule.m_Sprites[0] = EditorGUI.ObjectField(new Rect(rect.xMax - rect.height, rect.yMin, rect.height, rect.height), tilingRule.m_Sprites[0], typeof (Sprite), false) as Sprite;
|
||||
}
|
||||
|
||||
private static void RuleInspectorOnGUI(Rect rect, RuleTile.TilingRule tilingRule)
|
||||
{
|
||||
float y = rect.yMin;
|
||||
EditorGUI.BeginChangeCheck();
|
||||
GUI.Label(new Rect(rect.xMin, y, k_LabelWidth, k_SingleLineHeight), "Rule");
|
||||
tilingRule.m_RuleTransform = (RuleTile.TilingRule.Transform)EditorGUI.EnumPopup(new Rect(rect.xMin + k_LabelWidth, y, rect.width - k_LabelWidth, k_SingleLineHeight), tilingRule.m_RuleTransform);
|
||||
y += k_SingleLineHeight;
|
||||
GUI.Label(new Rect(rect.xMin, y, k_LabelWidth, k_SingleLineHeight), "Collider");
|
||||
tilingRule.m_ColliderType = (Tile.ColliderType)EditorGUI.EnumPopup(new Rect(rect.xMin + k_LabelWidth, y, rect.width - k_LabelWidth, k_SingleLineHeight), tilingRule.m_ColliderType);
|
||||
y += k_SingleLineHeight;
|
||||
GUI.Label(new Rect(rect.xMin, y, k_LabelWidth, k_SingleLineHeight), "Output");
|
||||
tilingRule.m_Output = (RuleTile.TilingRule.OutputSprite)EditorGUI.EnumPopup(new Rect(rect.xMin + k_LabelWidth, y, rect.width - k_LabelWidth, k_SingleLineHeight), tilingRule.m_Output);
|
||||
y += k_SingleLineHeight;
|
||||
|
||||
if (tilingRule.m_Output == RuleTile.TilingRule.OutputSprite.Animation)
|
||||
{
|
||||
GUI.Label(new Rect(rect.xMin, y, k_LabelWidth, k_SingleLineHeight), "Speed");
|
||||
tilingRule.m_AnimationSpeed = EditorGUI.FloatField(new Rect(rect.xMin + k_LabelWidth, y, rect.width - k_LabelWidth, k_SingleLineHeight), tilingRule.m_AnimationSpeed);
|
||||
y += k_SingleLineHeight;
|
||||
}
|
||||
if (tilingRule.m_Output == RuleTile.TilingRule.OutputSprite.Random)
|
||||
{
|
||||
GUI.Label(new Rect(rect.xMin, y, k_LabelWidth, k_SingleLineHeight), "Noise");
|
||||
tilingRule.m_PerlinScale = EditorGUI.Slider(new Rect(rect.xMin + k_LabelWidth, y, rect.width - k_LabelWidth, k_SingleLineHeight), tilingRule.m_PerlinScale, 0.001f, 0.999f);
|
||||
y += k_SingleLineHeight;
|
||||
|
||||
GUI.Label(new Rect(rect.xMin, y, k_LabelWidth, k_SingleLineHeight), "Shuffle");
|
||||
tilingRule.m_RandomTransform = (RuleTile.TilingRule.Transform)EditorGUI.EnumPopup(new Rect(rect.xMin + k_LabelWidth, y, rect.width - k_LabelWidth, k_SingleLineHeight), tilingRule.m_RandomTransform);
|
||||
y += k_SingleLineHeight;
|
||||
}
|
||||
|
||||
if (tilingRule.m_Output != RuleTile.TilingRule.OutputSprite.Single)
|
||||
{
|
||||
GUI.Label(new Rect(rect.xMin, y, k_LabelWidth, k_SingleLineHeight), "Size");
|
||||
EditorGUI.BeginChangeCheck();
|
||||
int newLength = EditorGUI.IntField(new Rect(rect.xMin + k_LabelWidth, y, rect.width - k_LabelWidth, k_SingleLineHeight), tilingRule.m_Sprites.Length);
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
Array.Resize(ref tilingRule.m_Sprites, Math.Max(newLength, 1));
|
||||
y += k_SingleLineHeight;
|
||||
|
||||
for (int i = 0; i < tilingRule.m_Sprites.Length; i++)
|
||||
{
|
||||
tilingRule.m_Sprites[i] = EditorGUI.ObjectField(new Rect(rect.xMin + k_LabelWidth, y, rect.width - k_LabelWidth, k_SingleLineHeight), tilingRule.m_Sprites[i], typeof(Sprite), false) as Sprite;
|
||||
y += k_SingleLineHeight;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public override Texture2D RenderStaticPreview(string assetPath, Object[] subAssets, int width, int height)
|
||||
{
|
||||
if (tile.m_DefaultSprite != null)
|
||||
{
|
||||
Type t = GetType("UnityEditor.SpriteUtility");
|
||||
if (t != null)
|
||||
{
|
||||
MethodInfo method = t.GetMethod("RenderStaticPreview", new Type[] {typeof (Sprite), typeof (Color), typeof (int), typeof (int)});
|
||||
if (method != null)
|
||||
{
|
||||
object ret = method.Invoke("RenderStaticPreview", new object[] {tile.m_DefaultSprite, Color.white, width, height});
|
||||
if (ret is Texture2D)
|
||||
return ret as Texture2D;
|
||||
}
|
||||
}
|
||||
}
|
||||
return base.RenderStaticPreview(assetPath, subAssets, width, height);
|
||||
}
|
||||
|
||||
private static Type GetType(string TypeName)
|
||||
{
|
||||
var type = Type.GetType(TypeName);
|
||||
if (type != null)
|
||||
return type;
|
||||
|
||||
if (TypeName.Contains("."))
|
||||
{
|
||||
var assemblyName = TypeName.Substring(0, TypeName.IndexOf('.'));
|
||||
var assembly = Assembly.Load(assemblyName);
|
||||
if (assembly == null)
|
||||
return null;
|
||||
type = assembly.GetType(TypeName);
|
||||
if (type != null)
|
||||
return type;
|
||||
}
|
||||
|
||||
var currentAssembly = Assembly.GetExecutingAssembly();
|
||||
var referencedAssemblies = currentAssembly.GetReferencedAssemblies();
|
||||
foreach (var assemblyName in referencedAssemblies)
|
||||
{
|
||||
var assembly = Assembly.Load(assemblyName);
|
||||
if (assembly != null)
|
||||
{
|
||||
type = assembly.GetType(TypeName);
|
||||
if (type != null)
|
||||
return type;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
private static Texture2D Base64ToTexture(string base64)
|
||||
{
|
||||
Texture2D t = new Texture2D(1, 1);
|
||||
t.hideFlags = HideFlags.HideAndDontSave;
|
||||
t.LoadImage(System.Convert.FromBase64String(base64));
|
||||
return t;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,13 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 3e71affbe222bd547ab7959462d8ea0d
|
||||
timeCreated: 1499789806
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"name": "Unity.2D.PixelPerfect.Samples.Editor",
|
||||
"references": [
|
||||
"GUID:5c401abef5fdf4442be445501720cde0"
|
||||
],
|
||||
"includePlatforms": [
|
||||
"Editor"
|
||||
],
|
||||
"excludePlatforms": [],
|
||||
"allowUnsafeCode": false,
|
||||
"overrideReferences": false,
|
||||
"precompiledReferences": [],
|
||||
"autoReferenced": true,
|
||||
"defineConstraints": [],
|
||||
"versionDefines": []
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2577262ae6c562e478a09842b1269c41
|
||||
AssemblyDefinitionImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,236 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine.Tilemaps;
|
||||
|
||||
namespace UnityEngine
|
||||
{
|
||||
[Serializable]
|
||||
[CreateAssetMenu]
|
||||
public class RuleTile : TileBase
|
||||
{
|
||||
public Sprite m_DefaultSprite;
|
||||
public Tile.ColliderType m_DefaultColliderType = Tile.ColliderType.Sprite;
|
||||
|
||||
[Serializable]
|
||||
public class TilingRule
|
||||
{
|
||||
public Neighbor[] m_Neighbors;
|
||||
public Sprite[] m_Sprites;
|
||||
public float m_AnimationSpeed;
|
||||
public float m_PerlinScale;
|
||||
public Transform m_RuleTransform;
|
||||
public OutputSprite m_Output;
|
||||
public Tile.ColliderType m_ColliderType;
|
||||
public Transform m_RandomTransform;
|
||||
|
||||
public TilingRule()
|
||||
{
|
||||
m_Output = OutputSprite.Single;
|
||||
m_Neighbors = new Neighbor[8];
|
||||
m_Sprites = new Sprite[1];
|
||||
m_AnimationSpeed = 1f;
|
||||
m_PerlinScale = 0.5f;
|
||||
m_ColliderType = Tile.ColliderType.Sprite;
|
||||
|
||||
for(int i=0; i<m_Neighbors.Length; i++)
|
||||
m_Neighbors[i] = Neighbor.DontCare;
|
||||
}
|
||||
|
||||
public enum Transform { Fixed, Rotated, MirrorX, MirrorY }
|
||||
public enum Neighbor { DontCare, This, NotThis }
|
||||
public enum OutputSprite { Single, Random, Animation }
|
||||
}
|
||||
|
||||
[HideInInspector] public List<TilingRule> m_TilingRules;
|
||||
|
||||
public override void GetTileData(Vector3Int position, ITilemap tileMap, ref TileData tileData)
|
||||
{
|
||||
tileData.sprite = m_DefaultSprite;
|
||||
tileData.colliderType = m_DefaultColliderType;
|
||||
tileData.flags = TileFlags.LockTransform;
|
||||
tileData.transform = Matrix4x4.identity;
|
||||
|
||||
foreach (TilingRule rule in m_TilingRules)
|
||||
{
|
||||
Matrix4x4 transform = Matrix4x4.identity;
|
||||
if (RuleMatches(rule, position, tileMap, ref transform))
|
||||
{
|
||||
switch (rule.m_Output)
|
||||
{
|
||||
case TilingRule.OutputSprite.Single:
|
||||
case TilingRule.OutputSprite.Animation:
|
||||
tileData.sprite = rule.m_Sprites[0];
|
||||
break;
|
||||
case TilingRule.OutputSprite.Random:
|
||||
int index = Mathf.Clamp(Mathf.FloorToInt(GetPerlinValue(position, rule.m_PerlinScale, 100000f) * rule.m_Sprites.Length), 0, rule.m_Sprites.Length - 1);
|
||||
tileData.sprite = rule.m_Sprites[index];
|
||||
if (rule.m_RandomTransform != TilingRule.Transform.Fixed)
|
||||
transform = ApplyRandomTransform(rule.m_RandomTransform, transform, rule.m_PerlinScale, position);
|
||||
break;
|
||||
}
|
||||
tileData.transform = transform;
|
||||
tileData.colliderType = rule.m_ColliderType;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static float GetPerlinValue(Vector3Int position, float scale, float offset)
|
||||
{
|
||||
return Mathf.PerlinNoise((position.x + offset) * scale, (position.y + offset) * scale);
|
||||
}
|
||||
|
||||
public override bool GetTileAnimationData(Vector3Int position, ITilemap tilemap, ref TileAnimationData tileAnimationData)
|
||||
{
|
||||
foreach (TilingRule rule in m_TilingRules)
|
||||
{
|
||||
Matrix4x4 transform = Matrix4x4.identity;
|
||||
if (RuleMatches(rule, position, tilemap, ref transform) && rule.m_Output == TilingRule.OutputSprite.Animation)
|
||||
{
|
||||
tileAnimationData.animatedSprites = rule.m_Sprites;
|
||||
tileAnimationData.animationSpeed = rule.m_AnimationSpeed;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public override void RefreshTile(Vector3Int location, ITilemap tileMap)
|
||||
{
|
||||
if (m_TilingRules != null && m_TilingRules.Count > 0)
|
||||
{
|
||||
for (int y = -1; y <= 1; y++)
|
||||
{
|
||||
for (int x = -1; x <= 1; x++)
|
||||
{
|
||||
base.RefreshTile(location + new Vector3Int(x, y, 0), tileMap);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
base.RefreshTile(location, tileMap);
|
||||
}
|
||||
}
|
||||
|
||||
public bool RuleMatches(TilingRule rule, Vector3Int position, ITilemap tilemap, ref Matrix4x4 transform)
|
||||
{
|
||||
// Check rule against rotations of 0, 90, 180, 270
|
||||
for (int angle = 0; angle <= (rule.m_RuleTransform == TilingRule.Transform.Rotated ? 270 : 0); angle += 90)
|
||||
{
|
||||
if (RuleMatches(rule, position, tilemap, angle))
|
||||
{
|
||||
transform = Matrix4x4.TRS(Vector3.zero, Quaternion.Euler(0f, 0f, -angle), Vector3.one);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// Check rule against x-axis mirror
|
||||
if ((rule.m_RuleTransform == TilingRule.Transform.MirrorX) && RuleMatches(rule, position, tilemap, true, false))
|
||||
{
|
||||
transform = Matrix4x4.TRS(Vector3.zero, Quaternion.identity, new Vector3(-1f, 1f, 1f));
|
||||
return true;
|
||||
}
|
||||
|
||||
// Check rule against y-axis mirror
|
||||
if ((rule.m_RuleTransform == TilingRule.Transform.MirrorY) && RuleMatches(rule, position, tilemap, false, true))
|
||||
{
|
||||
transform = Matrix4x4.TRS(Vector3.zero, Quaternion.identity, new Vector3(1f, -1f, 1f));
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private static Matrix4x4 ApplyRandomTransform(TilingRule.Transform type, Matrix4x4 original, float perlinScale, Vector3Int position)
|
||||
{
|
||||
float perlin = GetPerlinValue(position, perlinScale, 200000f);
|
||||
switch (type)
|
||||
{
|
||||
case TilingRule.Transform.MirrorX:
|
||||
return original * Matrix4x4.TRS(Vector3.zero, Quaternion.identity, new Vector3(perlin < 0.5 ? 1f : -1f, 1f, 1f));
|
||||
case TilingRule.Transform.MirrorY:
|
||||
return original * Matrix4x4.TRS(Vector3.zero, Quaternion.identity, new Vector3(1f, perlin < 0.5 ? 1f : -1f, 1f));
|
||||
case TilingRule.Transform.Rotated:
|
||||
int angle = Mathf.Clamp(Mathf.FloorToInt(perlin * 4), 0, 3) * 90;
|
||||
return Matrix4x4.TRS(Vector3.zero, Quaternion.Euler(0f, 0f, -angle), Vector3.one);
|
||||
}
|
||||
return original;
|
||||
}
|
||||
|
||||
public bool RuleMatches(TilingRule rule, Vector3Int position, ITilemap tilemap, int angle)
|
||||
{
|
||||
for (int y = -1; y <= 1; y++)
|
||||
{
|
||||
for (int x = -1; x <= 1; x++)
|
||||
{
|
||||
if (x != 0 || y != 0)
|
||||
{
|
||||
Vector3Int offset = new Vector3Int(x, y, 0);
|
||||
Vector3Int rotated = GetRotatedPos(offset, angle);
|
||||
int index = GetIndexOfOffset(rotated);
|
||||
TileBase tile = tilemap.GetTile(position + offset);
|
||||
if (rule.m_Neighbors[index] == TilingRule.Neighbor.This && tile != this || rule.m_Neighbors[index] == TilingRule.Neighbor.NotThis && tile == this)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public bool RuleMatches(TilingRule rule, Vector3Int position, ITilemap tilemap, bool mirrorX, bool mirrorY)
|
||||
{
|
||||
for (int y = -1; y <= 1; y++)
|
||||
{
|
||||
for (int x = -1; x <= 1; x++)
|
||||
{
|
||||
if (x != 0 || y != 0)
|
||||
{
|
||||
Vector3Int offset = new Vector3Int(x, y, 0);
|
||||
Vector3Int mirrored = GetMirroredPos(offset, mirrorX, mirrorY);
|
||||
int index = GetIndexOfOffset(mirrored);
|
||||
TileBase tile = tilemap.GetTile(position + offset);
|
||||
if (rule.m_Neighbors[index] == TilingRule.Neighbor.This && tile != this || rule.m_Neighbors[index] == TilingRule.Neighbor.NotThis && tile == this)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private int GetIndexOfOffset(Vector3Int offset)
|
||||
{
|
||||
int result = offset.x + 1 + (-offset.y + 1) * 3;
|
||||
if (result >= 4)
|
||||
result--;
|
||||
return result;
|
||||
}
|
||||
|
||||
public Vector3Int GetRotatedPos(Vector3Int original, int rotation)
|
||||
{
|
||||
switch (rotation)
|
||||
{
|
||||
case 0:
|
||||
return original;
|
||||
case 90:
|
||||
return new Vector3Int(-original.y, original.x, original.z);
|
||||
case 180:
|
||||
return new Vector3Int(-original.x, -original.y, original.z);
|
||||
case 270:
|
||||
return new Vector3Int(original.y, -original.x, original.z);
|
||||
}
|
||||
return original;
|
||||
}
|
||||
|
||||
public Vector3Int GetMirroredPos(Vector3Int original, bool mirrorX, bool mirrorY)
|
||||
{
|
||||
return new Vector3Int(original.x * (mirrorX ? -1 : 1), original.y * (mirrorY ? -1 : 1), original.z);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,13 @@
|
|||
fileFormatVersion: 2
|
||||
guid: d746e0082aaaaf0458b2b02bb4d45a47
|
||||
timeCreated: 1499789806
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Loading…
Add table
Add a link
Reference in a new issue