2026-04-06 스킬시스템

This commit is contained in:
2026-04-06 18:05:11 +09:00
parent c0713abdaa
commit 42f92020c7
65 changed files with 457 additions and 0 deletions

View File

@@ -0,0 +1,54 @@
using UnityEngine;
/*
:
Project에서 Create Skill/SkillData로 ,
Create Skill/WeaponSkillSet로
SkillManager + Effect
LoadWeaponSkills(skillSet)
SkillInput(slotIndex, inputState)
*/
[CreateAssetMenu(menuName = "Skill/SkillData")]
public class SkillData : ScriptableObject
{
[Header("기본 정보")]
public string SkillName;
[TextArea] public string Description;
public Sprite Icon;
[Header("스킬 분류")]
public SkillType SkillType;
public ActivationType ActivationType;
public TargetType TargetType;
[Header("애니메이션")]
public string AnimTrigger;
[Header("이펙트")]
public GameObject EffectPrefab;
[Header("레벨별 수치")]
public SkillLevelData[] Levels;
public SkillLevelData GetLevelData(int level)
{
int idx = Mathf.Clamp(level - 1, 0, Levels.Length - 1);
return Levels[idx];
}
}
[System.Serializable]
public class SkillLevelData
{
public float Damage;
public float Range;
public float Cooldown;
public float ManaCost;
public float Duration;
public float ChargeTimeMax;
}
public enum SkillType { Active, Passive }
public enum ActivationType { Instant, Charge }
public enum TargetType { Self, Single, Area, Projectile }

View File

@@ -0,0 +1,9 @@
using System.Collections.Generic;
using UnityEngine;
[CreateAssetMenu(menuName = "Skill/WeaponSkillSet")]
public class WeaponSkillSet : ScriptableObject
{
public WeaponType WeaponType;
public List<SkillData> Skills;
}