29 lines
823 B
C#
29 lines
823 B
C#
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Security.Policy;
|
|
using AYellowpaper.SerializedCollections;
|
|
using BITKit;
|
|
using UnityEngine;
|
|
|
|
namespace Net.BITKit.Impact
|
|
{
|
|
public class ScriptableImpact : ScriptableObject,ITag
|
|
{
|
|
[SerializeReference, SubclassSelector] private IReference[] tags;
|
|
[SerializeField] private int priority;
|
|
|
|
[SerializeField] private Transform[] prefabs;
|
|
[SerializeField] private AudioClip[] audioClips;
|
|
|
|
public int Hash { get; set; }
|
|
public IReadOnlyCollection<string> Tags => tags.Select(x=>x.Get()).ToArray();
|
|
|
|
public Transform Prefab => prefabs.Random();
|
|
public AudioClip AudioClip => audioClips.Random();
|
|
public int Priority => priority;
|
|
}
|
|
|
|
}
|