little bit of sound

This commit is contained in:
Ian Woods 2026-07-14 23:24:29 -07:00
parent dd87fd6d0a
commit adfc6c106c
2 changed files with 12 additions and 178 deletions

View file

@ -22163,124 +22163,6 @@ Mesh:
- serializedVersion: 1 - serializedVersion: 1
m_IndexStart: 0 m_IndexStart: 0
m_IndexCount: 0 m_IndexCount: 0
--- !u!1 &1686616342
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1686616345}
- component: {fileID: 1686616344}
- component: {fileID: 1686616343}
m_Layer: 0
m_Name: VFX_fireball_impact
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!73398921 &1686616343
VFXRenderer:
serializedVersion: 1
m_ObjectHideFlags: 2
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1686616342}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 0
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 0
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
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_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_MaskInteraction: 0
--- !u!2083052967 &1686616344
VisualEffect:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1686616342}
m_Enabled: 1
m_Asset: {fileID: 8926484042661614526, guid: 3fa4641e771cdd27880ed1185a588a83, type: 3}
m_InitialEventName: OnPlay
m_InitialEventNameOverriden: 0
m_StartSeed: 0
m_ResetSeedOnPlay: 1
m_AllowInstancing: 1
m_ResourceVersion: 1
m_PropertySheet:
m_Float:
m_Array: []
m_Vector2f:
m_Array: []
m_Vector3f:
m_Array: []
m_Vector4f:
m_Array: []
m_Uint:
m_Array: []
m_Int:
m_Array: []
m_Matrix4x4f:
m_Array: []
m_AnimationCurve:
m_Array: []
m_Gradient:
m_Array: []
m_NamedObject:
m_Array: []
m_Bool:
m_Array: []
--- !u!4 &1686616345
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1686616342}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -18.90215, y: 6.17317, z: 0.5013}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1694718091 --- !u!1 &1694718091
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -29155,63 +29037,6 @@ Transform:
m_Children: [] m_Children: []
m_Father: {fileID: 1097152085} m_Father: {fileID: 1097152085}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &6610752177701459700
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 158073311046191680, guid: 80eaad6d0b024835482b64625b63053c, type: 3}
propertyPath: m_Name
value: Fireball
objectReference: {fileID: 0}
- target: {fileID: 7644069561715729860, guid: 80eaad6d0b024835482b64625b63053c, type: 3}
propertyPath: m_LocalPosition.x
value: -53.04094
objectReference: {fileID: 0}
- target: {fileID: 7644069561715729860, guid: 80eaad6d0b024835482b64625b63053c, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7644069561715729860, guid: 80eaad6d0b024835482b64625b63053c, type: 3}
propertyPath: m_LocalPosition.z
value: -31.13852
objectReference: {fileID: 0}
- target: {fileID: 7644069561715729860, guid: 80eaad6d0b024835482b64625b63053c, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7644069561715729860, guid: 80eaad6d0b024835482b64625b63053c, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7644069561715729860, guid: 80eaad6d0b024835482b64625b63053c, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7644069561715729860, guid: 80eaad6d0b024835482b64625b63053c, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7644069561715729860, guid: 80eaad6d0b024835482b64625b63053c, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7644069561715729860, guid: 80eaad6d0b024835482b64625b63053c, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7644069561715729860, guid: 80eaad6d0b024835482b64625b63053c, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 80eaad6d0b024835482b64625b63053c, type: 3}
--- !u!1660057539 &9223372036854775807 --- !u!1660057539 &9223372036854775807
SceneRoots: SceneRoots:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -29240,5 +29065,3 @@ SceneRoots:
- {fileID: 2079088113} - {fileID: 2079088113}
- {fileID: 914832726} - {fileID: 914832726}
- {fileID: 993870445} - {fileID: 993870445}
- {fileID: 1686616345}
- {fileID: 6610752177701459700}

View file

@ -1,5 +1,6 @@
// Assets/_Project/Scripts/Gameplay/BuilderSpells/FireballSpellDefinition.cs // Assets/_Project/Scripts/Gameplay/BuilderSpells/FireballSpellDefinition.cs
using UnityEngine; using UnityEngine;
using TD.Audio;
using TD.Core; using TD.Core;
namespace TD.Gameplay.BuilderSpells namespace TD.Gameplay.BuilderSpells
@ -27,6 +28,12 @@ namespace TD.Gameplay.BuilderSpells
[Min(0f)] [Min(0f)]
[SerializeField] private float impactVfxLifetime = 2f; [SerializeField] private float impactVfxLifetime = 2f;
[Header("Impact Sound")]
[Tooltip("Sound played on every peer when this spell resolves successfully. Same " +
"SoundConfig struct TowerBuiltSound uses — reuse a tower's clip directly if " +
"you want the same sound.")]
[SerializeField] private SoundConfig impactSound;
[Header("Fireball")] [Header("Fireball")]
[Tooltip("Damage dealt to every enemy within Radius of the target point.")] [Tooltip("Damage dealt to every enemy within Radius of the target point.")]
[Min(0f)] [Min(0f)]
@ -56,6 +63,10 @@ namespace TD.Gameplay.BuilderSpells
{ {
if (impactVfxPrefab != null) if (impactVfxPrefab != null)
Destroy(Instantiate(impactVfxPrefab, targetPoint, Quaternion.identity), impactVfxLifetime); Destroy(Instantiate(impactVfxPrefab, targetPoint, Quaternion.identity), impactVfxLifetime);
if (impactSound.clip != null)
AudioManager.Instance?.Play(impactSound.clip, AudioCategory.TowerFire,
impactSound.RandomPitch(), impactSound.volume);
} }
} }
} }