diff options
author | chai <chaifix@163.com> | 2022-04-23 15:59:11 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2022-04-23 15:59:11 +0800 |
commit | 33858a90ec0bc47f0c3d4fc843f9f45a749175e3 (patch) | |
tree | 56d59f053a4b7612b4de7f5d96a47830b5c7a14e | |
parent | bdb737230b30e8fb9be63d95b792e8c8ba531ea0 (diff) |
*equip
38 files changed, 1014 insertions, 110 deletions
diff --git a/SurvivalTest/Assets/Resources/Art/ui/common/select_item_bg.png b/SurvivalTest/Assets/Resources/Art/ui/common/select_item_bg.png Binary files differindex 30e7384..7668f87 100644 --- a/SurvivalTest/Assets/Resources/Art/ui/common/select_item_bg.png +++ b/SurvivalTest/Assets/Resources/Art/ui/common/select_item_bg.png diff --git a/SurvivalTest/Assets/Resources/Art/ui/equipicon.meta b/SurvivalTest/Assets/Resources/Art/ui/equipicon.meta new file mode 100644 index 0000000..b402ae1 --- /dev/null +++ b/SurvivalTest/Assets/Resources/Art/ui/equipicon.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e749821f81bfed2428b1befd0927f182 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/SurvivalTest/Assets/Resources/Art/ui/equipicon/grenade.png b/SurvivalTest/Assets/Resources/Art/ui/equipicon/grenade.png Binary files differnew file mode 100644 index 0000000..3036358 --- /dev/null +++ b/SurvivalTest/Assets/Resources/Art/ui/equipicon/grenade.png diff --git a/SurvivalTest/Assets/Resources/Art/ui/equipicon/grenade.png.meta b/SurvivalTest/Assets/Resources/Art/ui/equipicon/grenade.png.meta new file mode 100644 index 0000000..78c3200 --- /dev/null +++ b/SurvivalTest/Assets/Resources/Art/ui/equipicon/grenade.png.meta @@ -0,0 +1,96 @@ +fileFormatVersion: 2 +guid: e1b736de4152d434d8fb757fac16f223 +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: diff --git a/SurvivalTest/Assets/Resources/Art/ui/equipicon/gun.png b/SurvivalTest/Assets/Resources/Art/ui/equipicon/gun.png Binary files differnew file mode 100644 index 0000000..0b5cab0 --- /dev/null +++ b/SurvivalTest/Assets/Resources/Art/ui/equipicon/gun.png diff --git a/SurvivalTest/Assets/Resources/Art/ui/equipicon/gun.png.meta b/SurvivalTest/Assets/Resources/Art/ui/equipicon/gun.png.meta new file mode 100644 index 0000000..8e738de --- /dev/null +++ b/SurvivalTest/Assets/Resources/Art/ui/equipicon/gun.png.meta @@ -0,0 +1,96 @@ +fileFormatVersion: 2 +guid: e7d386bc720056d479b608be0afa73dd +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: diff --git a/SurvivalTest/Assets/Resources/Art/ui/skillicon.meta b/SurvivalTest/Assets/Resources/Art/ui/itemicon.meta index 07da78f..07da78f 100644 --- a/SurvivalTest/Assets/Resources/Art/ui/skillicon.meta +++ b/SurvivalTest/Assets/Resources/Art/ui/itemicon.meta diff --git a/SurvivalTest/Assets/Resources/Art/ui/skillicon/plane.png b/SurvivalTest/Assets/Resources/Art/ui/itemicon/plane.png Binary files differindex c558407..c558407 100644 --- a/SurvivalTest/Assets/Resources/Art/ui/skillicon/plane.png +++ b/SurvivalTest/Assets/Resources/Art/ui/itemicon/plane.png diff --git a/SurvivalTest/Assets/Resources/Art/ui/skillicon/plane.png.meta b/SurvivalTest/Assets/Resources/Art/ui/itemicon/plane.png.meta index 740a92d..740a92d 100644 --- a/SurvivalTest/Assets/Resources/Art/ui/skillicon/plane.png.meta +++ b/SurvivalTest/Assets/Resources/Art/ui/itemicon/plane.png.meta diff --git a/SurvivalTest/Assets/Resources/Art/ui/skillicon/space_beamer.png b/SurvivalTest/Assets/Resources/Art/ui/itemicon/space_beamer.png Binary files differindex 2b61d5b..2b61d5b 100644 --- a/SurvivalTest/Assets/Resources/Art/ui/skillicon/space_beamer.png +++ b/SurvivalTest/Assets/Resources/Art/ui/itemicon/space_beamer.png diff --git a/SurvivalTest/Assets/Resources/Art/ui/skillicon/space_beamer.png.meta b/SurvivalTest/Assets/Resources/Art/ui/itemicon/space_beamer.png.meta index c5581ad..c5581ad 100644 --- a/SurvivalTest/Assets/Resources/Art/ui/skillicon/space_beamer.png.meta +++ b/SurvivalTest/Assets/Resources/Art/ui/itemicon/space_beamer.png.meta diff --git a/SurvivalTest/Assets/Resources/Prefabs/ui/PanelEquipBar.prefab b/SurvivalTest/Assets/Resources/Prefabs/ui/PanelEquipBar.prefab new file mode 100644 index 0000000..09f6283 --- /dev/null +++ b/SurvivalTest/Assets/Resources/Prefabs/ui/PanelEquipBar.prefab @@ -0,0 +1,425 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1085118836000191244 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1085118836000191247} + - component: {fileID: 4164072259357555242} + - component: {fileID: 993156772322233381} + m_Layer: 5 + m_Name: Grid + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1085118836000191247 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1085118836000191244} + 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: 4955373364382747661} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: -0.000015258789, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &4164072259357555242 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1085118836000191244} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4dbae61f498dde342a95489aca8ff68c, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &993156772322233381 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1085118836000191244} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_ChildAlignment: 0 + m_Spacing: 15 + m_ChildForceExpandWidth: 0 + m_ChildForceExpandHeight: 0 + m_ChildControlWidth: 0 + m_ChildControlHeight: 0 + m_ChildScaleWidth: 0 + m_ChildScaleHeight: 0 + m_ReverseArrangement: 0 +--- !u!1 &1375102333325764175 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8436322772745603753} + - component: {fileID: 3587346365448633421} + - component: {fileID: 7293713770503003309} + - component: {fileID: 8008270481914925385} + m_Layer: 5 + m_Name: Icon_Item + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &8436322772745603753 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1375102333325764175} + 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: 68874370905088208} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -0.20401001, y: 0.16799927} + m_SizeDelta: {x: -5.855, y: -5.927} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &3587346365448633421 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1375102333325764175} + m_CullTransparentMesh: 1 +--- !u!114 &7293713770503003309 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1375102333325764175} + 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: e1b736de4152d434d8fb757fac16f223, 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 &8008270481914925385 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1375102333325764175} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 1 + 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: 7293713770503003309} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &4552908487503979030 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4955373364382747661} + m_Layer: 5 + m_Name: Root + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4955373364382747661 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4552908487503979030} + 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: 2762965039604320079} + - {fileID: 1085118836000191247} + m_Father: {fileID: 8436628705391075521} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0.9227778} + m_AnchorMax: {x: 0.4, y: 0.9710001} + m_AnchoredPosition: {x: 18, y: -10.999817} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 1} +--- !u!1 &5896155432149764499 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2762965039604320079} + - component: {fileID: 2033039220} + m_Layer: 5 + m_Name: EquipTemplate + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!224 &2762965039604320079 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5896155432149764499} + 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: 68874370905088208} + m_Father: {fileID: 4955373364382747661} + 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: 0, y: 0} + m_SizeDelta: {x: 50, y: 50} + m_Pivot: {x: 0, y: 1} +--- !u!114 &2033039220 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5896155432149764499} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 83ab90093bb5312428311a589a4fe90f, type: 3} + m_Name: + m_EditorClassIdentifier: + Image_Icon: {fileID: 7293713770503003309} +--- !u!1 &7599170346437084209 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 68874370905088208} + - component: {fileID: 7997936969523246281} + m_Layer: 5 + m_Name: Button_Item + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &68874370905088208 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7599170346437084209} + 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: 8436322772745603753} + m_Father: {fileID: 2762965039604320079} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -0.000061035156, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &7997936969523246281 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7599170346437084209} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 0 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 1, g: 0, b: 0, 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: 7293713770503003309} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &8436628705391075520 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8436628705391075521} + - component: {fileID: 8436628705391075523} + - component: {fileID: 719302489} + m_Layer: 5 + m_Name: PanelEquipBar + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &8436628705391075521 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8436628705391075520} + 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: 4955373364382747661} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8436628705391075523 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8436628705391075520} + m_CullTransparentMesh: 1 +--- !u!114 &719302489 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8436628705391075520} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f1382539f3296aa47b7e2d7f269f9007, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EquipTemplate: {fileID: 2033039220} + m_EquipGrid: {fileID: 4164072259357555242} diff --git a/SurvivalTest/Assets/Resources/Prefabs/ui/PanelEquipBar.prefab.meta b/SurvivalTest/Assets/Resources/Prefabs/ui/PanelEquipBar.prefab.meta new file mode 100644 index 0000000..9a75998 --- /dev/null +++ b/SurvivalTest/Assets/Resources/Prefabs/ui/PanelEquipBar.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 6f8f312a90e5b264eb2db0c1bf204471 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/SurvivalTest/Assets/Resources/Prefabs/ui/PanelItemBar.prefab b/SurvivalTest/Assets/Resources/Prefabs/ui/PanelItemBar.prefab index 220f1a9..782f57a 100644 --- a/SurvivalTest/Assets/Resources/Prefabs/ui/PanelItemBar.prefab +++ b/SurvivalTest/Assets/Resources/Prefabs/ui/PanelItemBar.prefab @@ -153,7 +153,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 0.8301887, g: 0.11356357, b: 0.11356357, a: 1} + m_Color: {r: 0.19188325, g: 0.2673993, b: 0.8301887, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 @@ -646,11 +646,11 @@ RectTransform: 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: 32, y: -28} - m_SizeDelta: {x: 926, y: 100} - m_Pivot: {x: 0, y: 1} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8798891066935212562 CanvasRenderer: m_ObjectHideFlags: 0 diff --git a/SurvivalTest/Assets/Resources/Scenes/6_PixelCanvas 1.unity b/SurvivalTest/Assets/Resources/Scenes/6_PixelCanvas 1.unity index 0bbf5d8..e8fde5d 100644 --- a/SurvivalTest/Assets/Resources/Scenes/6_PixelCanvas 1.unity +++ b/SurvivalTest/Assets/Resources/Scenes/6_PixelCanvas 1.unity @@ -1115,6 +1115,112 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 1 +--- !u!1001 &719302486 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1127821130} + m_Modifications: + - target: {fileID: 8436628705391075520, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_Name + value: PanelEquipBar + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075520, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_AnchorMax.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} +--- !u!224 &719302487 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 8436628705391075521, guid: 6f8f312a90e5b264eb2db0c1bf204471, type: 3} + m_PrefabInstance: {fileID: 719302486} + m_PrefabAsset: {fileID: 0} --- !u!1 &729199530 GameObject: m_ObjectHideFlags: 0 @@ -2021,6 +2127,7 @@ RectTransform: m_Children: - {fileID: 1523503809} - {fileID: 787820390} + - {fileID: 719302487} m_Father: {fileID: 0} m_RootOrder: 15 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -2976,7 +3083,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1602948140} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 1.2609663, y: -7.89, z: 0} + m_LocalPosition: {x: 10, y: -7.89, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} diff --git a/SurvivalTest/Assets/Scripts/Equips/EquipBase.cs b/SurvivalTest/Assets/Scripts/Equips/EquipBase.cs index bda8b81..334609d 100644 --- a/SurvivalTest/Assets/Scripts/Equips/EquipBase.cs +++ b/SurvivalTest/Assets/Scripts/Equips/EquipBase.cs @@ -5,6 +5,10 @@ using UnityEngine; public abstract class EquipBase { + public abstract string name { get; } + + public abstract string iconPath { get; } + /// <summary> /// Á¬·¢Ä£Ê½ /// </summary> diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs b/SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs index be1645b..c00ebc4 100644 --- a/SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs +++ b/SurvivalTest/Assets/Scripts/Equips/Equip_Boomerang.cs @@ -9,6 +9,10 @@ public class Equip_Boomerang : EquipBase { public override AutoMode autoMode => AutoMode.Condition; + public override string name => ""; + + public override string iconPath => ""; + /// <summary> /// ½Óµ½»ØÐýïÚºóÖØÐÂÖÀ³ö£¬·ñÔò¼ä¸ôÒ»¶Îʱ¼äͶÖÀ /// </summary> diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs b/SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs index 6e3eb26..090c3ab 100644 --- a/SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs +++ b/SurvivalTest/Assets/Scripts/Equips/Equip_GrenadeLauncher.cs @@ -7,12 +7,45 @@ using UnityEngine; /// </summary> public class Equip_GrenadeLauncher : EquipBase { + + public override string name => "Áñµ¯·¢ÉäÆ÷"; + + public override string iconPath => "art/ui/equipicon/grenade"; + public override AutoMode autoMode => AutoMode.Interval; public override float interval => 0.5f; + private string prefabPath = "prefabs/grenade/grenade_v1"; + + // ÌØÐ§vfx + private string vfxPath = "prefabs/effect/eff_launch"; + + Vector3 GetRandomLaunchGrenadeDirection(CrewScript crew) + { + Vector3 dirOnPlane = Quaternion.Euler(0, 0, Random.Range(-15f, 15f)) * new Vector3(crew.aimDirection.x, crew.aimDirection.y, 0); + dirOnPlane = dirOnPlane.normalized; + Vector3 dir = new Vector3(dirOnPlane.x, dirOnPlane.y, Random.Range(0f, 1f)).normalized; + return dir.normalized; + } + + public override void OnTrigger(GameObject owner) { + Debug.Log("Grenade !!!"); + + CrewScript crew = owner.GetComponent<CrewScript>(); + + //// grenade + TestPeaceMakerGrenade grenade = UnityEngine.Object.Instantiate<TestPeaceMakerGrenade>(ResourceManager.Instance.Load<TestPeaceMakerGrenade>(prefabPath)); + Vector3 position = owner.GetComponent<TopDownTransform>().position + new Vector3(0, 0, 1.8f); + grenade.Set(position, GetRandomLaunchGrenadeDirection(crew), Random.Range(8f, 10f)); + grenade.gameObject.SetActive(true); + + //// vfx + GameObject eff = UnityEngine.Object.Instantiate<GameObject>(ResourceManager.Instance.Load<UnityEngine.GameObject>(vfxPath), crew.transform); + eff.transform.position = crew.launchPoint.position; + eff.SetActive(true); } }
\ No newline at end of file diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs b/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs index 335e2a7..b370e66 100644 --- a/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs +++ b/SurvivalTest/Assets/Scripts/Equips/Equip_Gun.cs @@ -7,6 +7,11 @@ using UnityEngine; /// </summary> public class Equip_Gun : EquipBase { + + public override string name => "枪"; + + public override string iconPath => "art/ui/equipicon/gun"; + public override AutoMode autoMode => AutoMode.Interval; public override float interval => 0.1f; diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_MightyGlove.cs b/SurvivalTest/Assets/Scripts/Equips/Equip_MightyGlove.cs index 1af4143..d5e4189 100644 --- a/SurvivalTest/Assets/Scripts/Equips/Equip_MightyGlove.cs +++ b/SurvivalTest/Assets/Scripts/Equips/Equip_MightyGlove.cs @@ -7,6 +7,11 @@ using UnityEngine; /// </summary> public class Equip_MightyGlove : EquipBase { + + public override string name => ""; + + public override string iconPath => ""; + public override AutoMode autoMode => AutoMode.Interval; public override void OnTrigger(GameObject owner) diff --git a/SurvivalTest/Assets/Scripts/Equips/Equip_TeslaCoil.cs b/SurvivalTest/Assets/Scripts/Equips/Equip_TeslaCoil.cs index 1546e1b..c0bdfc6 100644 --- a/SurvivalTest/Assets/Scripts/Equips/Equip_TeslaCoil.cs +++ b/SurvivalTest/Assets/Scripts/Equips/Equip_TeslaCoil.cs @@ -7,6 +7,11 @@ using UnityEngine; /// </summary> public class Equip_TeslaCoil : EquipBase { + + public override string name => ""; + + public override string iconPath => ""; + public override AutoMode autoMode => AutoMode.Interval; public override float interval => 1f; diff --git a/SurvivalTest/Assets/Scripts/GameApp.cs b/SurvivalTest/Assets/Scripts/GameApp.cs index cfc93d9..2bbb5f4 100644 --- a/SurvivalTest/Assets/Scripts/GameApp.cs +++ b/SurvivalTest/Assets/Scripts/GameApp.cs @@ -6,12 +6,21 @@ using UnityEngine; public class GameApp : MonoBehaviour { - void Start() + public static GameApp Instance + { + get; + private set; + } + + private void Awake() + { + Instance = this; + } + + void Start() { PlayerManager.Instance.Init(); BattleManager.Instance.Init(); - - } void Update() diff --git a/SurvivalTest/Assets/Scripts/Items/Item_B2Phone.cs b/SurvivalTest/Assets/Scripts/Items/Item_B2Phone.cs index 5301d85..4690e03 100644 --- a/SurvivalTest/Assets/Scripts/Items/Item_B2Phone.cs +++ b/SurvivalTest/Assets/Scripts/Items/Item_B2Phone.cs @@ -9,7 +9,7 @@ public class Item_B2Phone : ItemBase { public override string name => "B2ºäÕ¨»ú"; - public override string iconPath => "art/ui/skillicon/plane"; + public override string iconPath => "art/ui/itemicon/plane"; string prefabPath = "prefabs/weapon/b2"; diff --git a/SurvivalTest/Assets/Scripts/Items/Item_SpaceBeamer.cs b/SurvivalTest/Assets/Scripts/Items/Item_SpaceBeamer.cs index 73492ee..9a6cf19 100644 --- a/SurvivalTest/Assets/Scripts/Items/Item_SpaceBeamer.cs +++ b/SurvivalTest/Assets/Scripts/Items/Item_SpaceBeamer.cs @@ -6,7 +6,7 @@ public class Item_SpaceBeamer : ItemBase { public override string name => "Ì«¿ÕÉäÏß"; - public override string iconPath => "art/ui/skillicon/space_beamer"; + public override string iconPath => "art/ui/itemicon/space_beamer"; string prefabPath = "prefabs/weapon/space_beam"; diff --git a/SurvivalTest/Assets/Scripts/Managers/BattleManager.cs b/SurvivalTest/Assets/Scripts/Managers/BattleManager.cs index 102bc34..4cdaa72 100644 --- a/SurvivalTest/Assets/Scripts/Managers/BattleManager.cs +++ b/SurvivalTest/Assets/Scripts/Managers/BattleManager.cs @@ -8,6 +8,7 @@ public class BattleManager : Singleton<BattleManager> public void Init() { UIManager.Instance.OpenPanel(PanelType.PanelItemBar, null); + UIManager.Instance.OpenPanel(PanelType.PanelEquipBar, null); } public void Update() diff --git a/SurvivalTest/Assets/Scripts/Managers/PlayerManager.cs b/SurvivalTest/Assets/Scripts/Managers/PlayerManager.cs index 59593b0..8bd1dd0 100644 --- a/SurvivalTest/Assets/Scripts/Managers/PlayerManager.cs +++ b/SurvivalTest/Assets/Scripts/Managers/PlayerManager.cs @@ -8,10 +8,6 @@ public partial class PlayerManager : Singleton<PlayerManager> // ½ÇÉ« private CrewScript m_Crew; - // ³ÖÓеÄ×°±¸ - public List<EquipBase> equips { get { return m_Equips; } } - private List<EquipBase> m_Equips = new List<EquipBase>(); - // ³ÖÓеÄÊÎÆ· public List<DecorationBase> decorations { get { return m_Decorations; } } private List<DecorationBase> m_Decorations = new List<DecorationBase>(); @@ -19,12 +15,15 @@ public partial class PlayerManager : Singleton<PlayerManager> public void Init() { InitItems(); - + InitEquips(); } public void Update() { + CheckInput(); + UpdateItems(); + UpdateEquips(); } public void SetCrew(CrewScript crew) diff --git a/SurvivalTest/Assets/Scripts/Managers/PlayerManager_Equips.cs b/SurvivalTest/Assets/Scripts/Managers/PlayerManager_Equips.cs index ce85849..67e8ae7 100644 --- a/SurvivalTest/Assets/Scripts/Managers/PlayerManager_Equips.cs +++ b/SurvivalTest/Assets/Scripts/Managers/PlayerManager_Equips.cs @@ -2,9 +2,83 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; - public partial class PlayerManager : Singleton<PlayerManager> { + // ³ÖÓеÄ×°±¸ + public List<EquipBase> equips { get { return m_Equips; } } + private List<EquipBase> m_Equips = new List<EquipBase>(); + + private Coroutine m_CoFire; + + void InitEquips() + { + m_Equips.Add(new Equip_Gun()); + m_Equips.Add(new Equip_GrenadeLauncher()); + } + + /// <summary> + /// ×°±¸Ñ»· + /// </summary> + void UpdateEquips() + { + for(int i = 0; i < m_Equips.Count; ++i) + { + m_Equips[i].Update(); + } + } + + /// <summary> + /// ¼ì²éÊäÈ룬ʹÓÃ×°±¸ + /// </summary> + void CheckInput() + { + if (Input.GetButtonDown("Fire1") || (Input.GetAxis("GunTrigger") == 1)) + { + if (m_CoFire == null) + { + m_CoFire = GameApp.Instance.StartCoroutine(coFire()); + } + } + if (!Input.GetButton("Fire1") && (Input.GetAxis("GunTrigger") == 0)) + { + if (m_CoFire != null) + { + GameApp.Instance.StopCoroutine(m_CoFire); + m_CoFire = null; + } + } + } + + /// <summary> + /// ¿ª»ð + /// </summary> + /// <returns></returns> + IEnumerator coFire() + { + while (true) + { + for(int i = 0; i < m_Equips.Count; ++i) + { + EquipBase equip = m_Equips[i]; + if (equip == null) + continue; + if(equip.autoMode == EquipBase.AutoMode.Interval) + { + string id = equip.GetHashCode().ToString(); + float countDown = TinyCountDown.Instance.Get(id); + if(countDown <= 0) + { + equip.OnTrigger(m_Crew.gameObject); + TinyCountDown.Instance.Set(id, equip.interval); + } + else + { + } + } + } + yield return null; + } + } }
\ No newline at end of file diff --git a/SurvivalTest/Assets/Scripts/Managers/PlayerManager_Items.cs b/SurvivalTest/Assets/Scripts/Managers/PlayerManager_Items.cs index a0cfe52..df924ca 100644 --- a/SurvivalTest/Assets/Scripts/Managers/PlayerManager_Items.cs +++ b/SurvivalTest/Assets/Scripts/Managers/PlayerManager_Items.cs @@ -8,37 +8,20 @@ public partial class PlayerManager : Singleton<PlayerManager> public List<ItemBase> items { get { return m_Items; } } private List<ItemBase> m_Items = new List<ItemBase>(); - // µ±Ç°Ñ¡ÖеÄÎïÆ· - ItemBase m_CurrentItem = null; - void InitItems() { m_Items.Add(new Item_B2Phone()); m_Items.Add(new Item_SpaceBeamer()); } - /// <summary> - /// Ñ¡ÖÐÎïÆ· - /// </summary> - public void SetCurrentItem(ItemBase item) + public void UseItem(ItemBase item) { - if (!items.Contains(item)) + if(!items.Contains(item)) { - Debug.LogError("No such item"); + Debug.LogError("No such item, name=" + item.name); return; } - m_CurrentItem = item; - } - - /// <summary> - /// ʹÓõ±Ç°µÀ¾ß - /// </summary> - public void UseCurrentItem() - { - if (m_CurrentItem == null) - return; - - m_CurrentItem.OnUse(m_Crew.gameObject); + item.OnUse(m_Crew.gameObject); } void UpdateItems() diff --git a/SurvivalTest/Assets/Scripts/Test/TestPeaceMaker.cs b/SurvivalTest/Assets/Scripts/Test/TestPeaceMaker.cs index 033f198..7226ac9 100644 --- a/SurvivalTest/Assets/Scripts/Test/TestPeaceMaker.cs +++ b/SurvivalTest/Assets/Scripts/Test/TestPeaceMaker.cs @@ -12,11 +12,26 @@ public class TestPeaceMaker : CrewScript [SerializeField] private SpriteRenderer m_Arrow; [SerializeField] private float m_ArrowRadius; [SerializeField] private TestPeaceMakerBullet m_Bullet; - [SerializeField] private TestPeaceMakerGrenade m_Grenade; [SerializeField] private Vector2 m_Zoom; - [SerializeField] private GameObject m_LaunchVfx; [SerializeField] private Transform m_LaunchPoint; + public override Vector2 aimDirection + { + get + { + return m_AimDirection; + } + } + + + public override Transform launchPoint + { + get + { + return m_LaunchPoint; + } + } + private Vector3 zoomIn { get @@ -39,7 +54,6 @@ public class TestPeaceMaker : CrewScript private SpriteRenderer m_SpriteRenderer; private TopDownTransform m_Coord; private Coroutine m_CoFire; - private Coroutine m_CoLaunchGrenade; private Vector3 m_PreMouse; @@ -79,11 +93,10 @@ public class TestPeaceMaker : CrewScript SetAim(); bool isFire = Fire(); - bool isGrenade = LaunchGrenade(); CameraFollow(); - CameraZoom(/*isMove ||*/ isFire || isGrenade /*|| isBeam*/); + CameraZoom(isFire); } void CameraZoom(bool zout) @@ -212,29 +225,6 @@ public class TestPeaceMaker : CrewScript return true; } - bool LaunchGrenade() - { - //if (Input.GetButtonDown("Fire2") || (Input.GetAxis("BombTrigger") == 1)) - if (Input.GetButtonDown("Fire1") || (Input.GetAxis("GunTrigger") == 1)) - { - if (m_CoLaunchGrenade == null) - { - m_CoLaunchGrenade = StartCoroutine(coLaunchGrenade(0.2f)); - } - } - //if (!Input.GetButton("Fire2") && (Input.GetAxis("BombTrigger") == 0)) - if (!Input.GetButton("Fire1") && (Input.GetAxis("GunTrigger") == 0)) - { - if (m_CoLaunchGrenade != null) - { - StopCoroutine(m_CoLaunchGrenade); - m_CoLaunchGrenade = null; - } - return false; - } - return true; - } - IEnumerator coFire(float interval) { while (true) @@ -262,32 +252,4 @@ public class TestPeaceMaker : CrewScript return bullet; } - - Vector3 GetRandomLaunchGrenadeDirection() - { - Vector3 dirOnPlane = Quaternion.Euler(0, 0, Random.Range(-15f, 15f)) * new Vector3(m_AimDirection.x, m_AimDirection.y, 0); - dirOnPlane = dirOnPlane.normalized; - Vector3 dir = new Vector3(dirOnPlane.x, dirOnPlane.y, Random.Range(0f, 1f)).normalized; - return dir.normalized; - } - - IEnumerator coLaunchGrenade(float interval) - { - while (true) - { - // grenade - TestPeaceMakerGrenade grenade = Instantiate<TestPeaceMakerGrenade>(m_Grenade); - Vector3 position = m_Coord.position + new Vector3(0, 0, 1.8f); - grenade.Set(position, GetRandomLaunchGrenadeDirection(), Random.Range(8f, 10f)); - grenade.gameObject.SetActive(true); - - // vfx - GameObject eff = Instantiate<GameObject>(m_LaunchVfx, this.transform); - eff.transform.position = m_LaunchPoint.transform.position; - eff.SetActive(true); - - yield return new WaitForSeconds(interval); - } - } - } diff --git a/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar.cs b/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar.cs deleted file mode 100644 index dbec362..0000000 --- a/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar.cs +++ /dev/null @@ -1,10 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - -public class PanelEquipBar : PanelBase -{ - public override void Set(object param) - { - } -} diff --git a/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar.meta b/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar.meta new file mode 100644 index 0000000..380d967 --- /dev/null +++ b/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 26efe0e32407015498a94f7fe8930a70 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar/PanelEquipBar.cs b/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar/PanelEquipBar.cs new file mode 100644 index 0000000..1a7dae8 --- /dev/null +++ b/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar/PanelEquipBar.cs @@ -0,0 +1,38 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class PanelEquipBar : PanelBase +{ + public UIEquipWidget m_EquipTemplate; + + public UISimpleGrid m_EquipGrid; + + private List<UIEquipWidget> m_Equips = new List<UIEquipWidget>(); + + public override void Set(object param) + { + for(int i = 0; i < PlayerManager.Instance.equips.Count; ++i) + { + UIEquipWidget widget = MakeEquipWidget(PlayerManager.Instance.equips[i]); + m_Equips.Add(widget); + } + } + + UIEquipWidget MakeEquipWidget(EquipBase equip) + { + UIEquipWidget widget = Instantiate<UIEquipWidget>(m_EquipTemplate); + widget.transform.SetParent(m_EquipGrid.transform); + widget.gameObject.SetActive(true); + widget.GetComponent<RectTransform>().anchoredPosition = new Vector2(0, 0); +#if UNITY_EDITOR + widget.name = "equip (" + equip.name + ")"; +#endif + + UIEquipWidgetParam param = new UIEquipWidgetParam(); + param.equip = equip; + widget.Set(param); + return widget; + } + +} diff --git a/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar.cs.meta b/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar/PanelEquipBar.cs.meta index 8ef34db..bf78ef3 100644 --- a/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar.cs.meta +++ b/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar/PanelEquipBar.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 19d70a7fc1ff38c4cb6ae04cf1530b7b +guid: f1382539f3296aa47b7e2d7f269f9007 MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar/UIEquipWidget.cs b/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar/UIEquipWidget.cs new file mode 100644 index 0000000..bccd322 --- /dev/null +++ b/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar/UIEquipWidget.cs @@ -0,0 +1,26 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.UI; + +public struct UIEquipWidgetParam +{ + public EquipBase equip; +} + +public class UIEquipWidget : UIGridItemBase +{ + public Image Image_Icon; + + public EquipBase equip { get { return m_Equip; } } + private EquipBase m_Equip; + + public override void Set(object param) + { + UIEquipWidgetParam info = (UIEquipWidgetParam)param; + m_Equip = info.equip; + + Image_Icon.sprite = ResourceManager.Instance.Load<Sprite>(info.equip.iconPath); + + } +}
\ No newline at end of file diff --git a/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar/UIEquipWidget.cs.meta b/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar/UIEquipWidget.cs.meta new file mode 100644 index 0000000..bad655e --- /dev/null +++ b/SurvivalTest/Assets/Scripts/UI/Panel/PanelEquipBar/UIEquipWidget.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 83ab90093bb5312428311a589a4fe90f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/PanelItemBar.cs b/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/PanelItemBar.cs index 74f90c3..d426b84 100644 --- a/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/PanelItemBar.cs +++ b/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/PanelItemBar.cs @@ -11,7 +11,6 @@ public class PanelItemBar : PanelBase public Text m_TextName; - // µ±Ç°³ÖÓеÄItems private List<ItemWidget> m_Items = new List<ItemWidget>(); private int m_CurrentIndex = 0; @@ -48,6 +47,9 @@ public class PanelItemBar : PanelBase widget.transform.SetParent(m_ItemGrid.transform); widget.gameObject.SetActive(true); widget.GetComponent<RectTransform>().anchoredPosition = new Vector2(0, 0); +#if UNITY_EDITOR + widget.name = "item (" + item.name + ")"; +#endif ItemWidgetParam param = new ItemWidgetParam(); //param.onSelected = OnSelectItemWidget; @@ -71,7 +73,7 @@ public class PanelItemBar : PanelBase if (UseItem()) { m_Items[m_CurrentIndex].OnUseCallback(); - PlayerManager.Instance.UseCurrentItem(); + PlayerManager.Instance.UseItem(m_Items[m_CurrentIndex].item); } } @@ -87,8 +89,6 @@ public class PanelItemBar : PanelBase m_TextName.text = m_Items[index].item.name; m_CurrentIndex = index; - - PlayerManager.Instance.SetCurrentItem(m_Items[index].item); } } diff --git a/SurvivalTest/Assets/Scripts/UI/UIManager_Panels.cs b/SurvivalTest/Assets/Scripts/UI/UIManager_Panels.cs index d29c24a..bf2ada4 100644 --- a/SurvivalTest/Assets/Scripts/UI/UIManager_Panels.cs +++ b/SurvivalTest/Assets/Scripts/UI/UIManager_Panels.cs @@ -9,6 +9,7 @@ public enum PanelType PanelLevelBar, PanelItemBar, + PanelEquipBar, } public partial class UIManager : Singleton<UIManager> @@ -27,6 +28,7 @@ public partial class UIManager : Singleton<UIManager> { AddPanel(PanelType.PanelLevelBar, "PanelLevelBar"); AddPanel(PanelType.PanelItemBar, "PanelItemBar"); + AddPanel(PanelType.PanelEquipBar, "PanelEquipBar"); } void AddPanel(PanelType type, string path) diff --git a/SurvivalTest/Assets/Scripts/Unit/Crew/CrewScript.cs b/SurvivalTest/Assets/Scripts/Unit/Crew/CrewScript.cs index 6532317..4993cd7 100644 --- a/SurvivalTest/Assets/Scripts/Unit/Crew/CrewScript.cs +++ b/SurvivalTest/Assets/Scripts/Unit/Crew/CrewScript.cs @@ -5,4 +5,10 @@ using UnityEngine; public class CrewScript : MonoBehaviour { + // ³¯Ïò + public virtual Vector2 aimDirection { get; } + + // Áñµ¯·¢Éä¿Ú£¨Èç¹ûÓеϰ£© + public virtual Transform launchPoint { get; } + } |