本文整理汇总了C#中Entities.Teleport方法的典型用法代码示例。如果您正苦于以下问题:C# Entities.Teleport方法的具体用法?C# Entities.Teleport怎么用?C# Entities.Teleport使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Entities
的用法示例。
在下文中一共展示了Entities.Teleport方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Handle
public static void Handle(Entities.GameClient client, GeneralDataPacket General)
{
client.AttackPacket = null;
if (client.Booth != null)
{
client.Booth.CancelBooth();
}
if (client.DynamicMap != null)
{
if (!client.LeaveDynamicMap())
{
client.NetworkClient.Disconnect("FAILED_TO_PORTAL_DYNAMIC_MAP");
}
return;
}
if (client.Map.InheritanceMap == client.Map.MapID)
{
Core.PortalPoint StartLocation = new Core.PortalPoint(client.Map.MapID, General.Data1Low, General.Data1High);
if (Core.Screen.ValidDistance(client.X, client.Y, StartLocation.X, StartLocation.Y))
{
if (Core.Kernel.Portals.ContainsKey(StartLocation))
{
Core.PortalPoint Destination;
if (Core.Kernel.Portals.TryGetValue(StartLocation, out Destination))
{
client.Teleport(Destination.MapID, Destination.X, Destination.Y);
return;
}
}
}
}
client.Teleport(client.Map.MapID, client.LastX, client.LastY);
}
示例2: BeginTravel
public static void BeginTravel(Entities.GameClient client, ushort mapid, ushort x, ushort y, int secs = 40)
{
uint dynamicid;
Core.Kernel.Maps.selectorCollection1[999].CreateDynamic(out dynamicid);
client.TeleportDynamic(dynamicid, 70, 60);
int travelTime = (secs * 1000);
/*for (int i = 0; i < (travelTime / 1000); i++)
{
ProjectX_V3_Lib.Threading.DelayedTask.StartDelayedTask(() =>
{
using (var msg = Packets.Message.MessageCore.CreateCenter(
string.Format("Hitting destination in {0}", ((travelTime / 1000) - i))))
{
client.Send(msg);
}
}, 1000 * i);
}*/
int j = 0;
for (int i = secs; i > 0; i--)
{
int waitTime = (j * 1000);
string message = string.Format(Core.MessageConst.TRAVEL_TIME, i);
ProjectX_V3_Lib.Threading.DelayedTask.StartDelayedTask(() =>
{
using (var msg = Packets.Message.MessageCore.CreateCenter(
message))
{
client.Send(msg);
}
}, waitTime);
j++;
}
ProjectX_V3_Lib.Threading.DelayedTask.StartDelayedTask(() =>
{
using (var msg = Packets.Message.MessageCore.CreateCenter(
Core.MessageConst.TRAVEL_REACH))
{
client.Send(msg);
}
}, travelTime);
ProjectX_V3_Lib.Threading.DelayedTask.StartDelayedTask(() =>
{
client.Teleport(mapid, x, y);
using (var str = new Packets.StringPacket(new Packets.StringPacker("autorun_end")))
{
str.Action = Enums.StringAction.RoleEffect;
str.Data = client.EntityUID;
client.Send(str);
}
}, travelTime);
}
示例3: Leave
public void Leave(Entities.GameClient client)
{
TeamMembers.Remove(client);
client.Equipments.ClearMask();
client.Teleport(client.LastMapID, client.LastMapX, client.LastMapY);
}
示例4: Handle_MM
/// <summary>
/// Niggas be running from police.
/// </summary>
/// <param name="client"></param>
/// <param name="FullCommand"></param>
/// <param name="Command"></param>
public static void Handle_MM(Entities.GameClient client, string FullCommand, string[] Command)
{
ushort map;
if (!ushort.TryParse(Command[1], out map))
{
return;
}
ushort x;
if (!ushort.TryParse(Command[2], out x))
{
return;
}
ushort y;
if (!ushort.TryParse(Command[3], out y))
{
return;
}
client.Teleport(map, x, y);
}