File size: 1,006 Bytes
00437a9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
using System.Runtime.InteropServices;

namespace Quantum
{
	[StructLayout(LayoutKind.Auto)]
	public unsafe partial struct BTParams
	{
		private Frame _frame;
		private BTAgent* _agent;
		private EntityRef _entity;
		private AIBlackboardComponent* _blackboard;

		private BTParamsUser _userParams;

		public Frame Frame { get => _frame; }
		public BTAgent* Agent { get => _agent; }
		public EntityRef Entity { get => _entity; }
		public AIBlackboardComponent* Blackboard { get => _blackboard; }

		public BTParamsUser UserParams { get => _userParams; set => _userParams = value; }

		public void SetDefaultParams(Frame frame, BTAgent* agent, EntityRef entity, AIBlackboardComponent* blackboard = null)
		{
			_frame = frame;
			_agent = agent;
			_entity = entity;
			_blackboard = blackboard;
		}

		public void Reset(Frame frame)
		{
			_frame = default;
			_agent = default;
			_entity = default;
			_blackboard = default;

			_userParams = default;
		}
	}

	public partial struct BTParamsUser
	{
	}
}