/// <summary> /// Construct function for MonoBehaviour /// </summary> /// <param name="hoxisTypeArg"></param> /// <param name="hoxisIDArg"></param> /// <param name="autoSynArg"></param> public void Initialize(AgentType agentTypeArg, HoxisAgentID idArg, bool autoSynArg = true) { hoxisType = agentTypeArg; id = idArg; autoSyn = autoSynArg; isPlayer = (hoxisType == AgentType.Host ? true : false); _behav = GetComponent <HoxisBehaviour>(); }
/// <summary> /// Search for an agent through searcher /// </summary> /// <param name="id"></param> /// <param name="ret"></param> /// <returns></returns> public HoxisAgent GetAgent(HoxisAgentID id, out Ret ret) { if (!_agentSearcher.ContainsKey(id)) { ret = new Ret(LogLevel.Warning, RET_NO_HID, "HoxisID:" + id.group + "," + id.id + " doesn't exist"); return(null); } ret = Ret.ok; return(_agentSearcher[id]); }
/// <summary> /// Remove an agent to searcher /// </summary> /// <param name="id"></param> /// <param name="ret"></param> public void Remove(HoxisAgentID id, out Ret ret) { if (!_agentSearcher.ContainsKey(id)) { ret = new Ret(LogLevel.Warning, RET_NO_HID, "HoxisID:" + id.group + "," + id.id + " doesn't exist"); return; } _agentSearcher.Remove(id); ret = Ret.ok; }
/// <summary> /// Add an agent to searcher /// </summary> /// <param name="agent"></param> /// <param name="ret"></param> public void Register(HoxisAgent agent, out Ret ret) { HoxisAgentID hid = agent.id; if (_agentSearcher.ContainsKey(hid)) { ret = new Ret(LogLevel.Warning, RET_HID_EXISTS, "HoxisID:" + hid.group + "," + hid.id + " already exists"); return; } _agentSearcher.Add(hid, agent); ret = Ret.ok; }
public HoxisAgent GetAgent(HoxisAgentID id) { Ret ret; return(GetAgent(id, out ret)); }
public void Remove(HoxisAgent agent, out Ret ret) { HoxisAgentID hid = agent.id; Remove(hid, out ret); }