summaryrefslogtreecommitdiff
path: root/Client/Assets/Scripts/XMainClient/AI/AIRunTimeRandomFloat.cs
blob: e65d035e50d7ae9f7584125e9ad91019c84ec2b8 (plain)
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
using System;
using System.Xml;
using XUtliPoolLib;

namespace XMainClient
{
	internal class AIRunTimeRandomFloat : AIRunTimeNodeAction
	{
		private float _min_value;

		private string _min_name;

		private float _max_value;

		private string _max_name;

		private string _store_result_name;

		public AIRunTimeRandomFloat(XmlElement node) : base(node)
		{
			this._min_value = float.Parse(node.GetAttribute("minValue"));
			this._min_name = node.GetAttribute("Shared_MinName");
			this._max_value = float.Parse(node.GetAttribute("maxValue"));
			this._max_name = node.GetAttribute("Shared_MaxName");
			this._store_result_name = node.GetAttribute("Shared_StoredResultName");
		}

		public override bool Update(XEntity entity)
		{
			float floatByName = entity.AI.AIData.GetFloatByName(this._min_name, this._min_value);
			float floatByName2 = entity.AI.AIData.GetFloatByName(this._max_name, this._max_value);
			float para = XSingleton<XCommon>.singleton.RandomFloat(floatByName, floatByName2);
			entity.AI.AIData.SetFloatByName(this._store_result_name, para);
			return true;
		}
	}
}