diff --git a/Assets/Models/1ShootTower2.fbx b/Assets/Models/1ShootTower.fbx similarity index 100% rename from Assets/Models/1ShootTower2.fbx rename to Assets/Models/1ShootTower.fbx diff --git a/Assets/Models/1ShootTower2.fbx.meta b/Assets/Models/1ShootTower.fbx.meta similarity index 100% rename from Assets/Models/1ShootTower2.fbx.meta rename to Assets/Models/1ShootTower.fbx.meta diff --git a/Assets/Models/BlackHole.fbx b/Assets/Models/BlackHole.fbx new file mode 100644 index 0000000..ec9ae35 Binary files /dev/null and b/Assets/Models/BlackHole.fbx differ diff --git a/Assets/Models/BlackHole.fbx.meta b/Assets/Models/BlackHole.fbx.meta new file mode 100644 index 0000000..9b6bfd3 --- /dev/null +++ b/Assets/Models/BlackHole.fbx.meta @@ -0,0 +1,109 @@ +fileFormatVersion: 2 +guid: 81c113ab4fb3e22748b1f98217139f12 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: {} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 0.1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 0 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 1 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 0.001 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Models/Gripper.fbx b/Assets/Models/Gripper.fbx new file mode 100644 index 0000000..ef26635 Binary files /dev/null and b/Assets/Models/Gripper.fbx differ diff --git a/Assets/Models/Gripper.fbx.meta b/Assets/Models/Gripper.fbx.meta new file mode 100644 index 0000000..feabd42 --- /dev/null +++ b/Assets/Models/Gripper.fbx.meta @@ -0,0 +1,109 @@ +fileFormatVersion: 2 +guid: b6f90628eed2fe9e1bbb88db64de5c2a +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: {} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 0.1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 0 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 1 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 0.001 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Models/MrLazer.fbx b/Assets/Models/MrLazer.fbx new file mode 100644 index 0000000..cc1675f Binary files /dev/null and b/Assets/Models/MrLazer.fbx differ diff --git a/Assets/Models/MrLazer.fbx.meta b/Assets/Models/MrLazer.fbx.meta new file mode 100644 index 0000000..cb753d6 --- /dev/null +++ b/Assets/Models/MrLazer.fbx.meta @@ -0,0 +1,109 @@ +fileFormatVersion: 2 +guid: 48ecac7381f19af3bab6fef54e6dbadc +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: {} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 0.1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 0 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 1 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 0.001 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Models/Tesla.fbx b/Assets/Models/Tesla.fbx new file mode 100644 index 0000000..5fb4c16 Binary files /dev/null and b/Assets/Models/Tesla.fbx differ diff --git a/Assets/Models/Tesla.fbx.meta b/Assets/Models/Tesla.fbx.meta new file mode 100644 index 0000000..d3e5c90 --- /dev/null +++ b/Assets/Models/Tesla.fbx.meta @@ -0,0 +1,109 @@ +fileFormatVersion: 2 +guid: 72980d1326f21c0ffa34ea09162d1234 +ModelImporter: + serializedVersion: 22200 + internalIDToNameTable: [] + externalObjects: {} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 0.1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importPhysicalCameras: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 0 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 1 + strictVertexDataChecks: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 0.001 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + importBlendShapeDeformPercent: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Towers/BaseTower.prefab b/Assets/Prefabs/Towers/BaseTower.prefab index 4764fc0..052cd9f 100644 --- a/Assets/Prefabs/Towers/BaseTower.prefab +++ b/Assets/Prefabs/Towers/BaseTower.prefab @@ -61,10 +61,41 @@ PrefabInstance: - target: {fileID: 919132149155446097, guid: eb5e13df78999ef878da1db5c63224e2, type: 3} propertyPath: m_Name - value: 1ShootTower2 (1) + value: BaseTower objectReference: {fileID: 0} m_RemovedComponents: [] - m_RemovedGameObjects: [] + m_RemovedGameObjects: + - {fileID: -3133498875991405556, guid: eb5e13df78999ef878da1db5c63224e2, type: 3} + - {fileID: 1214824004972775095, guid: eb5e13df78999ef878da1db5c63224e2, type: 3} m_AddedGameObjects: [] - m_AddedComponents: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: eb5e13df78999ef878da1db5c63224e2, + type: 3} + insertIndex: -1 + addedObject: {fileID: 7883233016828513649} m_SourcePrefab: {fileID: 100100000, guid: eb5e13df78999ef878da1db5c63224e2, type: 3} +--- !u!1 &872127579833310669 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: eb5e13df78999ef878da1db5c63224e2, + type: 3} + m_PrefabInstance: {fileID: 61646009847259292} + m_PrefabAsset: {fileID: 0} +--- !u!114 &7883233016828513649 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 872127579833310669} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 62293fbacde88045196dca1e291b5f23, type: 3} + m_Name: + m_EditorClassIdentifier: + startHealth: 100 + OnHealthZero: + m_PersistentCalls: + m_Calls: [] + OnHealthChange: + m_PersistentCalls: + m_Calls: [] diff --git a/Assets/Prefabs/Towers/BlackHole.prefab b/Assets/Prefabs/Towers/BlackHole.prefab new file mode 100644 index 0000000..e28e6c5 --- /dev/null +++ b/Assets/Prefabs/Towers/BlackHole.prefab @@ -0,0 +1,252 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &6831315981973066878 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6791947043022790992} + - component: {fileID: 283773815913351468} + - component: {fileID: 7403195583508196174} + m_Layer: 0 + m_Name: Sphere + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6791947043022790992 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6831315981973066878} + serializedVersion: 2 + m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071067} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 125.59105, y: 125.59105, z: 125.59105} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 3798190417997420117} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &283773815913351468 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6831315981973066878} + m_Mesh: {fileID: 4711208715938537054, guid: 81c113ab4fb3e22748b1f98217139f12, type: 3} +--- !u!23 &7403195583508196174 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6831315981973066878} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: -1020301552483200737, guid: 81c113ab4fb3e22748b1f98217139f12, type: 3} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &7503482600245124024 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5119260969314287638} + - component: {fileID: 6992152662476368078} + - component: {fileID: 8324639096253395440} + m_Layer: 0 + m_Name: Cylinder.002 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5119260969314287638 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7503482600245124024} + serializedVersion: 2 + m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071067} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 315.57144, y: 315.57144, z: 315.57144} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 3798190417997420117} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6992152662476368078 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7503482600245124024} + m_Mesh: {fileID: 8691780276856062721, guid: 81c113ab4fb3e22748b1f98217139f12, type: 3} +--- !u!23 &8324639096253395440 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7503482600245124024} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: -6629797300637803691, guid: 81c113ab4fb3e22748b1f98217139f12, type: 3} + - {fileID: 6699446615349125189, guid: 81c113ab4fb3e22748b1f98217139f12, type: 3} + - {fileID: -6478536213147159724, guid: 81c113ab4fb3e22748b1f98217139f12, type: 3} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!1001 &3739212318609641762 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 872127579833310669, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + propertyPath: m_Name + value: BlackHole + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + insertIndex: -1 + addedObject: {fileID: 5119260969314287638} + - targetCorrespondingSourceObject: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + insertIndex: -1 + addedObject: {fileID: 6791947043022790992} + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: f54a14318952c90c5b47a300aedb0d15, type: 3} +--- !u!4 &3798190417997420117 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + m_PrefabInstance: {fileID: 3739212318609641762} + m_PrefabAsset: {fileID: 0} diff --git a/Assets/Prefabs/Towers/BlackHole.prefab.meta b/Assets/Prefabs/Towers/BlackHole.prefab.meta new file mode 100644 index 0000000..4139351 --- /dev/null +++ b/Assets/Prefabs/Towers/BlackHole.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 1d7949721a9f0bc9ba1a8c49ca5fd099 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Towers/Turret.prefab b/Assets/Prefabs/Towers/Turret.prefab index b574580..72a9f5c 100644 --- a/Assets/Prefabs/Towers/Turret.prefab +++ b/Assets/Prefabs/Towers/Turret.prefab @@ -1,5 +1,90 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: +--- !u!1 &204926011458308944 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7260327517591084354} + - component: {fileID: 5566712258885047037} + - component: {fileID: 3451839468339987846} + m_Layer: 0 + m_Name: Base + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7260327517591084354 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 204926011458308944} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 100, y: 100, z: 100} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 9116936080776508834} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &5566712258885047037 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 204926011458308944} + m_Mesh: {fileID: 3909233067320746374, guid: eb5e13df78999ef878da1db5c63224e2, type: 3} +--- !u!23 &3451839468339987846 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 204926011458308944} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: -6478536213147159724, guid: eb5e13df78999ef878da1db5c63224e2, type: 3} + - {fileID: 4892006958994659731, guid: eb5e13df78999ef878da1db5c63224e2, type: 3} + - {fileID: 3243688835468109435, guid: eb5e13df78999ef878da1db5c63224e2, type: 3} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} --- !u!1 &1909060460904820462 GameObject: m_ObjectHideFlags: 0 @@ -43,7 +128,7 @@ LineRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1909060460904820462} m_Enabled: 1 - m_CastShadows: 1 + m_CastShadows: 0 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 @@ -273,6 +358,37 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 9998882d4b72010a9b0ca2d8bd35835e, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!1 &2676689439087408815 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3410229124093629554} + m_Layer: 0 + m_Name: Tip + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3410229124093629554 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2676689439087408815} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0.00723} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 5341286721660132060} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &3770528383299556987 GameObject: m_ObjectHideFlags: 0 @@ -421,8 +537,107 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 5449894261559506427} + m_Father: {fileID: 9116936080776508834} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &7405500333329299342 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5341286721660132060} + - component: {fileID: 1325528991062417693} + - component: {fileID: 7013367250967747671} + - component: {fileID: 2740722787380423134} + m_Layer: 0 + m_Name: Barrel + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5341286721660132060 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7405500333329299342} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0.45, z: 0} + m_LocalScale: {x: 100, y: 100, z: 100} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 3410229124093629554} + m_Father: {fileID: 9116936080776508834} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &1325528991062417693 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7405500333329299342} + m_Mesh: {fileID: 8108563764783910780, guid: eb5e13df78999ef878da1db5c63224e2, type: 3} +--- !u!23 &7013367250967747671 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7405500333329299342} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: -6478536213147159724, guid: eb5e13df78999ef878da1db5c63224e2, type: 3} + - {fileID: 3243688835468109435, guid: eb5e13df78999ef878da1db5c63224e2, type: 3} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &2740722787380423134 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7405500333329299342} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7e81b110ace4ce100b765f538ff6522f, type: 3} + m_Name: + m_EditorClassIdentifier: + tip: {fileID: 3410229124093629554} --- !u!1 &8350726662087383414 GameObject: m_ObjectHideFlags: 0 @@ -466,7 +681,7 @@ LineRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8350726662087383414} m_Enabled: 1 - m_CastShadows: 1 + m_CastShadows: 0 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_StaticShadowCaster: 0 @@ -576,7 +791,7 @@ MonoBehaviour: visualRadius: 1 knob: {fileID: 1398471167256814047} knobSensitiviy: 4 - rotationMinMax: {x: 0, y: 360} + rotationMinMax: {x: -30, y: 30} --- !u!1 &8708866392971799934 GameObject: m_ObjectHideFlags: 0 @@ -727,7 +942,7 @@ PrefabInstance: - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, type: 3} propertyPath: m_LocalPosition.y - value: 0.875 + value: 0.84 objectReference: {fileID: 0} - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, type: 3} @@ -737,7 +952,7 @@ PrefabInstance: - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, type: 3} propertyPath: m_LocalRotation.w - value: 0.7071068 + value: 1 objectReference: {fileID: 0} - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, type: 3} @@ -747,7 +962,7 @@ PrefabInstance: - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, type: 3} propertyPath: m_LocalRotation.y - value: 0.7071068 + value: 0 objectReference: {fileID: 0} - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, type: 3} @@ -762,7 +977,7 @@ PrefabInstance: - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, type: 3} propertyPath: m_LocalEulerAnglesHint.y - value: 90 + value: 0 objectReference: {fileID: 0} - target: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, type: 3} @@ -792,6 +1007,14 @@ PrefabInstance: m_RemovedComponents: [] m_RemovedGameObjects: [] m_AddedGameObjects: + - targetCorrespondingSourceObject: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + insertIndex: -1 + addedObject: {fileID: 5341286721660132060} + - targetCorrespondingSourceObject: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, + type: 3} + insertIndex: -1 + addedObject: {fileID: 7260327517591084354} - targetCorrespondingSourceObject: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, type: 3} insertIndex: -1 @@ -804,7 +1027,7 @@ PrefabInstance: type: 3} insertIndex: -1 addedObject: {fileID: 3688593234855359137} - - targetCorrespondingSourceObject: {fileID: 3635969771921000238, guid: f54a14318952c90c5b47a300aedb0d15, + - targetCorrespondingSourceObject: {fileID: 527409087646353271, guid: f54a14318952c90c5b47a300aedb0d15, type: 3} insertIndex: -1 addedObject: {fileID: 2164222606230954140} @@ -813,44 +1036,11 @@ PrefabInstance: type: 3} insertIndex: -1 addedObject: {fileID: 5888942256506690542} - - targetCorrespondingSourceObject: {fileID: 872127579833310669, guid: f54a14318952c90c5b47a300aedb0d15, - type: 3} - insertIndex: -1 - addedObject: {fileID: 4899864418954658791} - targetCorrespondingSourceObject: {fileID: 872127579833310669, guid: f54a14318952c90c5b47a300aedb0d15, type: 3} insertIndex: -1 addedObject: {fileID: 7437064479105606814} - - targetCorrespondingSourceObject: {fileID: 1153177996425766443, guid: f54a14318952c90c5b47a300aedb0d15, - type: 3} - insertIndex: -1 - addedObject: {fileID: 4164347120692690677} m_SourcePrefab: {fileID: 100100000, guid: f54a14318952c90c5b47a300aedb0d15, type: 3} ---- !u!4 &5449894261559506427 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 3635969771921000238, guid: f54a14318952c90c5b47a300aedb0d15, - type: 3} - m_PrefabInstance: {fileID: 8778754593817981653} - m_PrefabAsset: {fileID: 0} ---- !u!1 &7625877907635197182 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 1153177996425766443, guid: f54a14318952c90c5b47a300aedb0d15, - type: 3} - m_PrefabInstance: {fileID: 8778754593817981653} - m_PrefabAsset: {fileID: 0} ---- !u!114 &4164347120692690677 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7625877907635197182} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 7e81b110ace4ce100b765f538ff6522f, type: 3} - m_Name: - m_EditorClassIdentifier: - tip: {fileID: 2164222606230954140} --- !u!1 &8488737342646939416 stripped GameObject: m_CorrespondingSourceObject: {fileID: 872127579833310669, guid: f54a14318952c90c5b47a300aedb0d15, @@ -870,25 +1060,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: delayBetweenBulletSequences: 0.1 ---- !u!114 &4899864418954658791 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8488737342646939416} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 62293fbacde88045196dca1e291b5f23, type: 3} - m_Name: - m_EditorClassIdentifier: - startHealth: 100 - OnHealthZero: - m_PersistentCalls: - m_Calls: [] - OnHealthChange: - m_PersistentCalls: - m_Calls: [] --- !u!114 &7437064479105606814 MonoBehaviour: m_ObjectHideFlags: 0 @@ -904,8 +1075,15 @@ MonoBehaviour: horizontalArc: {fileID: 8981486734084153558} verticalArc: {fileID: 5247639431516572416} attackSecondsDelay: 1 - projectileSequence: [] - barrel: {fileID: 4164347120692690677} + projectileSequence: + - Arc: 0 + Amount: 1 + Speed: 20 + bulletPrefab: {fileID: 2962360034595352958, guid: 32921dff6554af324ba0001ca8b56fee, + type: 3} + Burst: 0 + BurstDelay: 0 + barrel: {fileID: 2740722787380423134} trajectory: {fileID: 3987931586699850031} trajectoryBounces: 4 --- !u!4 &9116936080776508834 stripped diff --git a/Assets/Scenes/TowerTest.unity b/Assets/Scenes/TowerTest.unity index a9d466b..ccddcc5 100644 --- a/Assets/Scenes/TowerTest.unity +++ b/Assets/Scenes/TowerTest.unity @@ -500,6 +500,74 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &841514572 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: 81c113ab4fb3e22748b1f98217139f12, + type: 3} + propertyPath: m_LocalPosition.x + value: 1.3662028 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c113ab4fb3e22748b1f98217139f12, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.10441658 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c113ab4fb3e22748b1f98217139f12, + type: 3} + propertyPath: m_LocalPosition.z + value: -1.0829077 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c113ab4fb3e22748b1f98217139f12, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c113ab4fb3e22748b1f98217139f12, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c113ab4fb3e22748b1f98217139f12, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c113ab4fb3e22748b1f98217139f12, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c113ab4fb3e22748b1f98217139f12, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c113ab4fb3e22748b1f98217139f12, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 81c113ab4fb3e22748b1f98217139f12, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: 81c113ab4fb3e22748b1f98217139f12, + type: 3} + propertyPath: m_Name + value: BlackHole + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 81c113ab4fb3e22748b1f98217139f12, type: 3} --- !u!1001 &891862850 PrefabInstance: m_ObjectHideFlags: 0 @@ -508,15 +576,10 @@ PrefabInstance: serializedVersion: 3 m_TransformParent: {fileID: 0} m_Modifications: - - target: {fileID: 1366289561210151836, guid: 9415cb10a1bd579269301ca4f61a1554, + - target: {fileID: 7437064479105606814, guid: 9415cb10a1bd579269301ca4f61a1554, type: 3} - propertyPath: m_CastShadows - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 7215452495559205732, guid: 9415cb10a1bd579269301ca4f61a1554, - type: 3} - propertyPath: m_CastShadows - value: 0 + propertyPath: projectileSequence.Array.data[0].Speed + value: 100 objectReference: {fileID: 0} - target: {fileID: 8488737342646939416, guid: 9415cb10a1bd579269301ca4f61a1554, type: 3} @@ -893,6 +956,74 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0} +--- !u!1001 &1671091699 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: 72980d1326f21c0ffa34ea09162d1234, + type: 3} + propertyPath: m_LocalPosition.x + value: 3.934035 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 72980d1326f21c0ffa34ea09162d1234, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.15400258 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 72980d1326f21c0ffa34ea09162d1234, + type: 3} + propertyPath: m_LocalPosition.z + value: -5.620848 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 72980d1326f21c0ffa34ea09162d1234, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 72980d1326f21c0ffa34ea09162d1234, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 72980d1326f21c0ffa34ea09162d1234, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 72980d1326f21c0ffa34ea09162d1234, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 72980d1326f21c0ffa34ea09162d1234, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 72980d1326f21c0ffa34ea09162d1234, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 72980d1326f21c0ffa34ea09162d1234, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: 72980d1326f21c0ffa34ea09162d1234, + type: 3} + propertyPath: m_Name + value: Tesla + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 72980d1326f21c0ffa34ea09162d1234, type: 3} --- !u!1001 &1732242001 PrefabInstance: m_ObjectHideFlags: 0 @@ -1211,6 +1342,74 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0} +--- !u!1001 &1932692269 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: 48ecac7381f19af3bab6fef54e6dbadc, + type: 3} + propertyPath: m_LocalPosition.x + value: 2.750328 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 48ecac7381f19af3bab6fef54e6dbadc, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.33336017 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 48ecac7381f19af3bab6fef54e6dbadc, + type: 3} + propertyPath: m_LocalPosition.z + value: -6.3587294 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 48ecac7381f19af3bab6fef54e6dbadc, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071067 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 48ecac7381f19af3bab6fef54e6dbadc, + type: 3} + propertyPath: m_LocalRotation.x + value: -0.7071068 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 48ecac7381f19af3bab6fef54e6dbadc, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 48ecac7381f19af3bab6fef54e6dbadc, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 48ecac7381f19af3bab6fef54e6dbadc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 48ecac7381f19af3bab6fef54e6dbadc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 48ecac7381f19af3bab6fef54e6dbadc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: 48ecac7381f19af3bab6fef54e6dbadc, + type: 3} + propertyPath: m_Name + value: MrLazer + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 48ecac7381f19af3bab6fef54e6dbadc, type: 3} --- !u!1001 &667212637924654954 PrefabInstance: m_ObjectHideFlags: 0 @@ -1294,3 +1493,6 @@ SceneRoots: - {fileID: 1621186633} - {fileID: 1797347352} - {fileID: 1732242001} + - {fileID: 841514572} + - {fileID: 1932692269} + - {fileID: 1671091699} diff --git a/Assets/Scripts/Tower/GravityTower.cs b/Assets/Scripts/Tower/GravityTower.cs new file mode 100644 index 0000000..49b34f9 --- /dev/null +++ b/Assets/Scripts/Tower/GravityTower.cs @@ -0,0 +1,28 @@ +using UnityEngine; + +public class GravityTower : Tower +{ + [SerializeField, Range(0.1f, 10f)] + private float radius = 1f; + + [SerializeField] + private Transform orb; + + [SerializeField] + private LayerMask affectedBodies; + + [SerializeField] + private AnimationCurve distToAcceleration; + + protected override void FixedUpdate() + { + Collider[] projectilesInRadius = Physics.OverlapSphere(orb.position, radius, affectedBodies); + foreach (var projectile in projectilesInRadius) + { + Rigidbody projectileBody = projectile.GetComponent(); + Vector3 projToOrb = orb.position - projectile.transform.position; + float dist = projToOrb.magnitude; + projectileBody.AddForce(projToOrb.normalized * distToAcceleration.Evaluate(dist)); + } + } +} diff --git a/Assets/Scripts/Tower/GravityTower.cs.meta b/Assets/Scripts/Tower/GravityTower.cs.meta new file mode 100644 index 0000000..b3fa4a5 --- /dev/null +++ b/Assets/Scripts/Tower/GravityTower.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4fb850aad740b9b418ade5f74fff1818 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Tower/ProjectileTower.cs b/Assets/Scripts/Tower/ProjectileTower.cs index 77b0387..bf2b48d 100644 --- a/Assets/Scripts/Tower/ProjectileTower.cs +++ b/Assets/Scripts/Tower/ProjectileTower.cs @@ -15,7 +15,7 @@ public class ProjectileTower : Tower private ProjectileSpawner projectileSpawner; - public Vector3 AimDirection => transform.TransformVector(transform.InverseTransformVector(horizontalArc.ToKnobVector) + transform.InverseTransformVector(verticalArc.ToKnobVector)); + public Vector3 AimDirection => barrel.transform.forward; protected override void Awake() { @@ -75,7 +75,7 @@ public class ProjectileTower : Tower Debug.DrawRay(transform.position, horizontalArc.ToKnobVector, Color.red, attackSecondsDelay); Debug.DrawRay(transform.position, verticalArc.ToKnobVector, Color.green, attackSecondsDelay); Debug.DrawRay(transform.position, AimDirection, Color.yellow, attackSecondsDelay); - projectileSpawner.RunBulletSequence(transform.position, transform.up, AimDirection, projectileSequence); + projectileSpawner.RunBulletSequence(barrel.transform.position, transform.up, AimDirection, projectileSequence); } while (true); } @@ -84,7 +84,6 @@ public class ProjectileTower : Tower // Rotate barrel to match rotation private void UpdateBarrelRotation() { - // TODOu barrel.transform.localRotation = Quaternion.Euler(-verticalArc.Value, horizontalArc.Value, 0f); } } diff --git a/Assets/Scripts/Tower/Tower.cs b/Assets/Scripts/Tower/Tower.cs index 9b21002..dbb6e66 100644 --- a/Assets/Scripts/Tower/Tower.cs +++ b/Assets/Scripts/Tower/Tower.cs @@ -33,4 +33,12 @@ public abstract class Tower : MonoBehaviour { horizontalArc.Value.RemoveListener(SnapVerticalToHorizontal); } + + protected virtual void Update() + { + } + + protected virtual void FixedUpdate() + { + } }