本文整理汇总了C#中AgentCircuitData.Copy方法的典型用法代码示例。如果您正苦于以下问题:C# AgentCircuitData.Copy方法的具体用法?C# AgentCircuitData.Copy怎么用?C# AgentCircuitData.Copy使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AgentCircuitData
的用法示例。
在下文中一共展示了AgentCircuitData.Copy方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: EnableChildAgents
public bool EnableChildAgents(int DrawDistance, GridRegion[] neighbors,
AgentCircuitData circuit, uint TeleportFlags, AgentData data, byte[] IPAddress, int Port)
{
int count = 0;
bool informed = true;
foreach (GridRegion neighbor in neighbors)
{
//m_log.WarnFormat("--> Going to send child agent to {0}, new agent {1}", neighbour.RegionName, newAgent);
if (neighbor.RegionHandle != m_service.RegionHandle)
{
byte[] endAddress = IPAddress;
int endPort = Port;
if (endAddress == null)
{
//We need to find the IP then
IPEndPoint endPoint = neighbor.ExternalEndPoint;
endAddress = endPoint.Address.GetAddressBytes();
endPort = endPoint.Port;
}
if (!InformClientOfNeighbor(circuit.Copy(), neighbor, TeleportFlags, data,
endAddress, endPort))
informed = false;
}
count++;
}
return informed;
}
示例2: EnableChildAgents
public bool EnableChildAgents(int DrawDistance, AgentCircuitData circuit)
{
int count = 0;
bool informed = true;
INeighborService neighborService = m_service.Registry.RequestModuleInterface<INeighborService>();
if (neighborService != null)
{
uint x, y;
Utils.LongToUInts(m_service.RegionHandle, out x, out y);
GridRegion ourRegion = m_service.Registry.RequestModuleInterface<IGridService>().GetRegionByPosition(UUID.Zero, (int)x, (int)y);
if (ourRegion == null)
{
m_log.Info("[EQMService]: Failed to inform neighbors about new agent, could not find our region. ");
return false;
}
List<GridRegion> neighbors = neighborService.GetNeighbors(ourRegion, DrawDistance);
foreach (GridRegion neighbor in neighbors)
{
//m_log.WarnFormat("--> Going to send child agent to {0}, new agent {1}", neighbour.RegionName, newAgent);
if (neighbor.RegionHandle != m_service.RegionHandle)
{
if (!InformClientOfNeighbor(circuit.Copy(), neighbor,
(uint)TeleportFlags.Default, null))
informed = false;
}
count++;
}
}
return informed;
}