39 lines
1.2 KiB
C#
39 lines
1.2 KiB
C#
using Simulator.Data;
|
|
using Simulator.Model;
|
|
using UnityEngine;
|
|
using UVC.Data.Core;
|
|
using System.Collections.Generic;
|
|
using Unity.VisualScripting;
|
|
|
|
public class SinkComponent : ComponentBase
|
|
{
|
|
public SinkDataClass sourceData = new SinkDataClass();
|
|
public SinkModelData sinkModelData = new SinkModelData();
|
|
public void SetComponent(SinkDataClass sourceData)
|
|
{
|
|
this.sourceData = sourceData;
|
|
data = sourceData;
|
|
onComponentClicked += FindAnyObjectByType<SinkProperty>().SetProertyWindow;
|
|
FitCollider();
|
|
SetPosition();
|
|
SetRotation();
|
|
}
|
|
|
|
public override void GetModelData(DataObject modelData)
|
|
{
|
|
sinkModelData.component_id = modelData.GetString("component_id");
|
|
var datas = modelData.GetDataObject("data");
|
|
var sinkdatas = datas.GetDataArray("entity_ids");
|
|
var sinkentities = new List<string>();
|
|
foreach(var sinkdata in sinkdatas)
|
|
{
|
|
sinkentities.Add(sinkdata.GetString("entity_id"));
|
|
}
|
|
PlayerPropertyDataBase.Instance.CollectUseData(sinkentities.Count);
|
|
EntityManager.Instance.DestroyEnity(sinkentities);
|
|
}
|
|
public override void getpath()
|
|
{
|
|
onComponentClicked?.Invoke(componentType, sourceData);
|
|
}
|
|
} |