23 lines
604 B
C#
23 lines
604 B
C#
using QFSW.QC.Utilities;
|
|
using System;
|
|
using UnityEngine;
|
|
|
|
namespace QFSW.QC.Parsers
|
|
{
|
|
public class ComponentParser : PolymorphicQcParser<Component>
|
|
{
|
|
public override Component Parse(string value, Type type)
|
|
{
|
|
GameObject obj = ParseRecursive<GameObject>(value);
|
|
Component objComponent = obj.GetComponent(type);
|
|
|
|
if (!objComponent)
|
|
{
|
|
throw new ParserInputException($"No component on the object '{value}' of type {type.GetDisplayName()} existed.");
|
|
}
|
|
|
|
return objComponent;
|
|
}
|
|
}
|
|
}
|