Add qeuipment Drag & Drop

This commit is contained in:
kabix09 2022-06-05 16:51:08 +02:00
parent 9fa400f9a7
commit 2fc771ad56
32 changed files with 4257 additions and 759 deletions

View File

@ -10,8 +10,7 @@
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>10.0.20506</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<RootNamespace>
</RootNamespace>
<RootNamespace></RootNamespace>
<ProjectGuid>{F58AF4E0-3E6D-54B1-523D-8F755DC8E665}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
@ -49,14 +48,15 @@
</PropertyGroup>
<ItemGroup>
<Compile Include="Assets\Scripts\SettingsButton.cs" />
<Compile Include="Assets\Scripts\Enemies' Scprits\Enemy.cs" />
<Compile Include="Assets\Scripts\DragDropItemManager.cs" />
<Compile Include="Assets\Scripts\UI\ISlot.cs" />
<Compile Include="Assets\Scripts\Enemies&apos; Scprits\Enemy.cs" />
<Compile Include="Assets\Scripts\Inventory\InventorySlot.cs" />
<Compile Include="Assets\Scripts\QuitGame.cs" />
<Compile Include="Assets\Scripts\Inventory\InventoryManager.cs" />
<Compile Include="Assets\Scripts\Dialogue.cs" />
<Compile Include="Assets\Scripts\Item\ItemSlot.cs" />
<Compile Include="Assets\Scripts\Item\Item.cs" />
<Compile Include="Assets\Scripts\Equipment\EquipmentPanelController.cs" />
<Compile Include="Assets\Scripts\Chest\ChestSlot.cs" />
<Compile Include="Assets\Scripts\CamerFollow.cs" />
<Compile Include="Assets\Scripts\Equipment\EquipmentSlot.cs" />
@ -65,24 +65,19 @@
<Compile Include="Assets\Scripts\FloatValue.cs" />
<Compile Include="Assets\Scripts\Item\EquippableItem.cs" />
<Compile Include="Assets\breakable.cs" />
<Compile Include="Assets\Scripts\Enemies' Scprits\FollowingEnemy.cs" />
<Compile Include="Assets\Scripts\UI\BasePanelController.cs" />
<Compile Include="Assets\Scripts\Equipment\EquipmentManager.cs" />
<Compile Include="Assets\Scripts\Enemies&apos; Scprits\FollowingEnemy.cs" />
<Compile Include="Assets\Scripts\Item\PickableController.cs" />
<Compile Include="Assets\Scripts\Chest\ChestController.cs" />
<Compile Include="Assets\Scripts\DoorBehaviour.cs" />
<Compile Include="Assets\Scripts\Enemies' Scprits\PatrollingEnemy.cs" />
<Compile Include="Assets\Scripts\Enemies&apos; Scprits\PatrollingEnemy.cs" />
<Compile Include="Assets\Scripts\Chest\ChestPanelController.cs" />
<Compile Include="Assets\Scripts\Inventory\InventoryPanelController.cs" />
<Compile Include="Assets\Scripts\UI\BaseWarehouseController.cs" />
<Compile Include="Assets\Scripts\ChangeScene.cs" />
<Compile Include="Assets\NPCDialogue.cs" />
<Compile Include="Assets\Scripts\Player.cs" />
<Compile Include="Assets\Scripts\UI\BasePanelController.cs" />
<Compile Include="Assets\Scripts\UI\BaseWarehouseController.cs" />
<Compile Include="Assets\Scripts\UI\IPanel.cs" />
<Compile Include="Assets\Scripts\UI\ISlot.cs" />
<None Include="Assets\Scripts\UI\BasePanelController.cs.meta" />
<None Include="Assets\Scripts\UI\BaseWarehouseController.cs.meta" />
<None Include="Assets\Scripts\UI\IPanel.cs.meta" />
<None Include="Assets\Scripts\UI\ISlot.cs.meta" />
<None Include="Assets\TextMesh Pro\Shaders\TMPro.cginc" />
<None Include="Assets\TextMesh Pro\Shaders\TMP_SDF-Mobile Overlay.shader" />
<None Include="Assets\TextMesh Pro\Shaders\TMP_Bitmap.shader" />

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

View File

@ -0,0 +1,96 @@
fileFormatVersion: 2
guid: d04533eaab74deb4eb063f6321a419e8
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
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: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

View File

@ -0,0 +1,96 @@
fileFormatVersion: 2
guid: 83d57d4a6ebc22d49b59ac6dcf223ba8
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
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: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

View File

@ -0,0 +1,96 @@
fileFormatVersion: 2
guid: 3aed434958832ce44a7b33264f537a0d
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
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: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

View File

@ -0,0 +1,96 @@
fileFormatVersion: 2
guid: 1154e82a9799308428894b18a2472969
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
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: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

View File

@ -0,0 +1,96 @@
fileFormatVersion: 2
guid: 49fddd07e72d574498e38d681c64ae4b
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
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: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

View File

@ -0,0 +1,96 @@
fileFormatVersion: 2
guid: 328b2a519c8aae04ebec60c3ac2d2d08
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
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: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -13,7 +13,7 @@ MonoBehaviour:
m_Name: Pickaxe
m_EditorClassIdentifier:
id: 0
name: Pickaxe
name: Pickaxe1
description: Example pickaxe
level: 1
image: {fileID: 8959118705387878318, guid: 25e473b59d2d7534e803be0a2825e0f7, type: 3}

View File

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

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: d220ca711ae86664d8bb4f9c1622b13f
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,355 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &6050866943365732696
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6050866943365732697}
- component: {fileID: 6050866943365732699}
- component: {fileID: 6050866943365732698}
m_Layer: 5
m_Name: number_held
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &6050866943365732697
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6050866943365732696}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 6050866944478881893}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 16.7, y: -20.2}
m_SizeDelta: {x: 30, y: 15.3012}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &6050866943365732699
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6050866943365732696}
m_CullTransparentMesh: 1
--- !u!114 &6050866943365732698
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6050866943365732696}
m_Enabled: 0
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, 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_text: '0
'
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4294967295
m_fontColor: {r: 1, g: 1, b: 1, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 16
m_fontSizeBase: 16
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 1
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_enableWordWrapping: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 1
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!1 &6050866944478881892
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6050866944478881893}
- component: {fileID: 6050866944478881895}
- component: {fileID: 6050866944478881894}
- component: {fileID: 102800839174329912}
- component: {fileID: 2957687053509197962}
m_Layer: 5
m_Name: equipment_slot
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &6050866944478881893
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6050866944478881892}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 6050866944784408671}
- {fileID: 6050866943365732697}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 55, y: -55}
m_SizeDelta: {x: 60, y: 60}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &6050866944478881895
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6050866944478881892}
m_CullTransparentMesh: 1
--- !u!114 &6050866944478881894
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6050866944478881892}
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: a45fb5c08be526a4dabe2e91e53f4d15, 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!114 &102800839174329912
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6050866944478881892}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Navigation:
m_Mode: 3
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.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, 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.1
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: 6050866944478881894}
m_OnClick:
m_PersistentCalls:
m_Calls: []
--- !u!114 &2957687053509197962
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6050866944478881892}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4f706c6230646be46be4f61e0096060c, type: 3}
m_Name:
m_EditorClassIdentifier:
slotItemNumberText: {fileID: 6050866943365732698}
itemImage: {fileID: 6050866944784408656}
_PanelController: {fileID: 0}
_number: 0
_item: {fileID: 0}
countStackableItems: 0
EquipmentType: 0
--- !u!1 &6050866944784408670
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6050866944784408671}
- component: {fileID: 6050866944784408657}
- component: {fileID: 6050866944784408656}
m_Layer: 5
m_Name: inventory_image
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &6050866944784408671
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6050866944784408670}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 6050866944478881893}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 50, y: 50}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &6050866944784408657
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6050866944784408670}
m_CullTransparentMesh: 1
--- !u!114 &6050866944784408656
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6050866944784408670}
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: 0}
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: 0}
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

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 27d62cf80d88f774abdf05e1c1663f1c
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -382,7 +382,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
m_AnchoredPosition: {x: 225, y: 0}
m_SizeDelta: {x: 550, y: 715}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &9124304227729624652
@ -438,9 +438,10 @@ MonoBehaviour:
_panel: {fileID: 9124304227903849260}
_blankSlot: {fileID: 4202482119828722599, guid: 843626bb28e804c4384ea070e0fead67, type: 3}
_panelCloseButton: {fileID: 9124304227312933334}
_tmp: {fileID: 0}
_instance: {fileID: 0}
_itemTemplate: {fileID: 6570396142606985298, guid: 1304511dd1dfefc449e87c3d904ab15f, type: 3}
inventoryPanel: {fileID: 0}
_tmp: {fileID: 0}
MAX_SLOT_CUNT: 48
--- !u!1 &9124304227744546894
GameObject:
m_ObjectHideFlags: 0

View File

@ -587,6 +587,60 @@ BoxCollider2D:
serializedVersion: 2
m_Size: {x: 0.9375, y: 1}
m_EdgeRadius: 0
--- !u!1 &129765437
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 129765439}
- component: {fileID: 129765438}
m_Layer: 0
m_Name: Equipment
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &129765438
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 129765437}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0ba28abf0f2ebba45a0f7743b05d08d9, type: 3}
m_Name:
m_EditorClassIdentifier:
_panel: {fileID: 260959342237683369, guid: d220ca711ae86664d8bb4f9c1622b13f, type: 3}
isOpen: 0
_helmet: {fileID: 0}
_chest: {fileID: 0}
_boots: {fileID: 0}
_weapon: {fileID: 0}
_potion_one: {fileID: 0}
_potion_two: {fileID: 0}
_potion_three: {fileID: 0}
_potion_four: {fileID: 0}
_potion_five: {fileID: 0}
--- !u!4 &129765439
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 129765437}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 727.6137, y: 542.32117, z: -1282.3181}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 14
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &131599442
GameObject:
m_ObjectHideFlags: 0
@ -1055,7 +1109,7 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 167690937}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -20.36, y: 18.54, z: 0}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
@ -2467,7 +2521,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 12
m_RootOrder: 13
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &612814819
GameObject:
@ -105167,7 +105221,7 @@ RectTransform:
m_Children:
- {fileID: 726162834}
m_Father: {fileID: 0}
m_RootOrder: 13
m_RootOrder: 12
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}

View File

@ -30,6 +30,7 @@ public class ChestController : BaseWarehouseController
{
this.OpenPanel();
InventoryManager.Instance.OpenPanel();
EquipmentManager.Instance.OpenPanel();
}
}
}
@ -57,6 +58,7 @@ public class ChestController : BaseWarehouseController
{
base.ClosePanel();
InventoryManager.Instance.ClosePanel();
EquipmentManager.Instance.ClosePanel();
}
protected override void SetupPanel()

View File

@ -0,0 +1,269 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[System.Serializable]
public class EquipmentManager : BaseWarehouseController
{
public static int MAX_ITEMS = 0;
[SerializeField] public EquippableItem _helmet;
[SerializeField] public EquippableItem _chest;
[SerializeField] public EquippableItem _boots;
[SerializeField] public EquippableItem _weapon;
[SerializeField] public EquippableItem _potion_one;
[SerializeField] public EquippableItem _potion_two;
[SerializeField] public EquippableItem _potion_three;
[SerializeField] public EquippableItem _potion_four;
[SerializeField] public EquippableItem _potion_five;
public static EquipmentManager Instance;
Dictionary<int, Item> equipment;
private void Awake()
{
if(Instance == null)
{
Instance = this;
equipment = new Dictionary<int, Item>() {
{ 0, _helmet },
{ 1, _chest },
{ 2, _boots },
{ 3, _weapon },
{ 4, _potion_one },
{ 5, _potion_two },
{ 6, _potion_three },
{ 7, _potion_four },
{ 8, _potion_five }
};
}else if (Instance != this)
{
Destroy(gameObject);
}
}
protected override void SetupPanel()
{
if(this.dynamicPanel)
{
this.dynamicPanel.GetComponent<EquipmentPanelController>().Setup(gameObject, equipment);
}
}
// Handle in Manager items local list
public override void SetItemOnPosition(int _keyPosition, Item _item)
{
// in qeuippment panel its case where we drop drop on empty slot
if(_item == null) // if we move eg. form chest to eq Drop work on Eq Panel where dropitemSlot.Item is Null
return;
_keyPosition = MapItemTypeToSlotNumber((EquippableItem)_item);
this.equipment[_keyPosition] = _item;
this.ApplyEquipmentObject(true, (EquippableItem)_item);
base.SetItemOnPosition(_keyPosition, _item);
}
// Remove from Manager items local list
public override void RemoveItemFromPosition(int _keyPosition)
{
this.equipment.Remove(_keyPosition);
this.ApplyEquipmentObject(_keyPosition);
base.RemoveItemFromPosition(_keyPosition);
}
/*
* Function decide in which slot item should be handled
* Mach item to dictionary key based on items equippment type
* return: dictionary key
*/
private int MapItemTypeToSlotNumber(EquippableItem _item)
{
int key=-1;
if(_item == null)
{
Debug.LogError("Ten item w ogóle nie powinien być rozpatrywany jako dodany do ekwipunku - nigdy nie był typu EquippableItem");
}
switch(_item.EquipmentType)
{
case EquipmentType.Helmet:
{
key = 0;
break;
}
case EquipmentType.Chest:
{
key = 1;
break;
}
case EquipmentType.Boots:
{
key = 2;
break;
}
case EquipmentType.Weapon:
{
key = 3;
break;
}
case EquipmentType.Potion:
{
key = 4;
break;
}
case EquipmentType.Bracelet:
{
key = 5;
break;
}
case EquipmentType.Necklet:
{
key = 6;
break;
}
case EquipmentType.Ring:
{
if(!equipment.ContainsKey(7) || equipment[7] == null)
{
key = 7;
}
if(!equipment.ContainsKey(8) || equipment[8] == null)
{
key = 8;
}
break;
}
default:
{
Debug.Log("Can't mach number to item type");
break;
}
}
return key;
}
/*
* applu EquippableItem to be able to see actual equipment status - mapped with 'qeuipment' Dictioanry which is not showed in amnager panel :/
*/
public void ApplyEquipmentObject(bool put, EquippableItem _item = null)
{
switch(_item.EquipmentType)
{
case EquipmentType.Helmet:
{
_helmet = put ? _item : null;
break;
}
case EquipmentType.Chest:
{
_chest = put ? _item : null;
break;
}
case EquipmentType.Boots:
{
_boots = put ? _item : null;
break;
}
case EquipmentType.Weapon:
{
_weapon = put ? _item : null;
break;
}
case EquipmentType.Potion:
{
_potion_one = put ? _item : null;
break;
}
case EquipmentType.Bracelet:
{
_potion_two = put ? _item : null;
break;
}
case EquipmentType.Necklet:
{
_potion_three = put ? _item : null;
break;
}
case EquipmentType.Ring:
{
if(!equipment.ContainsKey(7) || equipment[7] == null)
{
_potion_four = put ? _item : null;
}
if(!equipment.ContainsKey(8) || equipment[8] == null)
{
_potion_five = put ? _item : null;
}
break;
}
default:
{
Debug.Log("Can't mach number to item type");
break;
}
}
}
public void ApplyEquipmentObject(int _keyPosition)
{
switch(_keyPosition)
{
case 0:
{
_helmet = null;
break;
}
case 1:
{
_chest = null;
break;
}
case 2:
{
_boots = null;
break;
}
case 3:
{
_weapon = null;
break;
}
case 4:
{
_potion_one = null;
break;
}
case 5:
{
_potion_two = null;
break;
}
case 6:
{
_potion_three = null;
break;
}
case 7:
{
_potion_four = null;
break;
}
case 9:
{
_potion_five = null;
break;
}
}
}
}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: cdf13082744b57e4b89ab42e4d957668
guid: 0ba28abf0f2ebba45a0f7743b05d08d9
MonoImporter:
externalObjects: {}
serializedVersion: 2

View File

@ -0,0 +1,65 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class EquipmentPanelController : BasePanelController
{
[Header("Slots List")]
[SerializeField] public const int MAX_SLOT_CUNT = 0;
[SerializeField] public EquipmentSlot _helmet;
[SerializeField] public EquipmentSlot _chest;
[SerializeField] public EquipmentSlot _boots;
[SerializeField] public EquipmentSlot _weapon;
[SerializeField] public EquipmentSlot _potion_one;
[SerializeField] public EquipmentSlot _potion_two;
[SerializeField] public EquipmentSlot _potion_three;
[SerializeField] public EquipmentSlot _potion_four;
[SerializeField] public EquipmentSlot _potion_five;
Dictionary<int, EquipmentSlot> equipment;
// overrwrite this metoh in in parent beacuse we dont have to init any slots
void Awake()
{
base.MAX_SLOT_CUNT = 9;
equipment = new Dictionary<int, EquipmentSlot>() {
{ 0, _helmet },
{ 1, _chest },
{ 2, _boots },
{ 3, _weapon },
{ 4, _potion_one },
{ 5, _potion_two },
{ 6, _potion_three },
{ 7, _potion_four },
{ 8, _potion_five }
};
base.Awake();
}
public override void CloseOnClick()
{
Destroy(gameObject); // destroy panel
if(_instance)
{
_instance.GetComponent<EquipmentManager>().ClosePanel();
}
}
public void Setup(GameObject _equipment, Dictionary<int, Item> _equipmentItems)
{
_instance = _equipment;
base.Setup(_equipmentItems);
}
protected override ISlot SetupSlot(int key, GameObject _parent)
{
ISlot tmp = equipment[key];
tmp.SetupSlot(key, null, this);
return tmp;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 42863f9f48506b944b90213e49c99763
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,17 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class EquipmentSlot : ItemSlot
{
public EquipmentType EquipmentType;
public override bool CanReceiveItem(Item item)
{
if(item == null) // if dropped item is null alway accept :D
return true;
EquippableItem equippableItem = item as EquippableItem; // jeśli item pierwotnie nie był typu EquippableItem to casting zwróci NULL
return equippableItem != null && equippableItem.EquipmentType == EquipmentType; // the second condition is to put items on fields with matched type
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 4f706c6230646be46be4f61e0096060c
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -9,6 +9,10 @@ public enum EquipmentType
Gloves,
Boots,
Weapon,
Potion,
Bracelet,
Necklet,
Ring,
Other
}

View File

@ -6,7 +6,6 @@ using UnityEngine.EventSystems;
using System;
abstract public class BasePanelController : MonoBehaviour
// where _slotT: ISlot // (A -> D, B, C)
{
[Header("Panel Information")]
[SerializeField] protected GameObject _panel;
@ -23,16 +22,10 @@ abstract public class BasePanelController : MonoBehaviour
[Header("Slots List")]
[SerializeField] public const int MAX_SLOT_CUNT = 6 * 8;
[SerializeField] public int MAX_SLOT_CUNT = 6 * 8;
[SerializeField] public List<ISlot> _itemSlots = new List<ISlot>();
// public event Action<ISlot> OnBeginDragEvent;
// public event Action<ISlot> OnEndDragEvent;
// public event Action<ISlot> OnDragEvent;
// public event Action<ISlot> OnDropEvent;
void Awake()
public void Awake()
{
_instance = gameObject;
@ -53,6 +46,14 @@ abstract public class BasePanelController : MonoBehaviour
#region Main logic
protected abstract ISlot SetupSlot(int key, GameObject _parent);
public void SetupDragAndDropToSlot(ISlot slot)
{
slot.OnBeginDragEvent += BeginDrag;
slot.OnEndDragEvent += EndDrag;
slot.OnDragEvent += Drag;
slot.OnDropEvent += Drop;
}
protected void InitPanelSlots()
{
if(_panel)
@ -65,10 +66,7 @@ abstract public class BasePanelController : MonoBehaviour
_itemSlots.Add(newSlot);
// Assign events
_itemSlots[i].OnBeginDragEvent += BeginDrag;
_itemSlots[i].OnEndDragEvent += EndDrag;
_itemSlots[i].OnDragEvent += Drag;
_itemSlots[i].OnDropEvent += Drop;
this.SetupDragAndDropToSlot(_itemSlots[i]);
}
}
}
@ -211,11 +209,10 @@ abstract public class BasePanelController : MonoBehaviour
Item draggedItem = InventoryManager.Instance.DraggedSlot.Item; // remember temporary currently dragged item
InventoryManager.Instance.DraggedSlot.Item = dropItemSlot.Item;
dropItemSlot.Item = draggedItem;
// update items position in chest slots
// - after close paned - items dont reset its positions
_instance.GetComponent<BaseWarehouseController>().SetItemOnPosition(InventoryManager.Instance.DraggedSlot.Number, InventoryManager.Instance.DraggedSlot.Item);
_instance.GetComponent<BaseWarehouseController>().SetItemOnPosition(dropItemSlot.Number, dropItemSlot.Item);
}

View File

@ -42,22 +42,12 @@ abstract public class BaseWarehouseController : MonoBehaviour
protected abstract void SetupPanel();
// public virtual void CloseOnClick()
// {
// Destroy(gameObject); // destroy panel
// if(_panel)
// {
// _inventory.GetComponent<InventoryManager>().ClosePanel();
// }
// }
public void SetItemOnPosition(int _keyPosition, Item _item)
public virtual void SetItemOnPosition(int _keyPosition, Item _item)
{
this._items[_keyPosition] = _item;
}
public void RemoveItemFromPosition(int _keyPosition)
public virtual void RemoveItemFromPosition(int _keyPosition)
{
this._items.Remove(_keyPosition);
}

View File

@ -1,8 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
interface IPanel
{
}