本文整理汇总了C#中System.Vector3.SwitchYZ方法的典型用法代码示例。如果您正苦于以下问题:C# Vector3.SwitchYZ方法的具体用法?C# Vector3.SwitchYZ怎么用?C# Vector3.SwitchYZ使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Vector3
的用法示例。
在下文中一共展示了Vector3.SwitchYZ方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GameOnOnGameProcessPacket
/// <summary>
/// Detects the spells that have missile and are casted from fow.
/// </summary>
public static void GameOnOnGameProcessPacket(GamePacketEventArgs args)
{
//Gets received when a projectile is created.
if (args.PacketData[0] == 0x3B)
{
var packet = new GamePacket(args.PacketData);
packet.Position = 1;
packet.ReadFloat(); //Missile network ID
var missilePosition = new Vector3(packet.ReadFloat(), packet.ReadFloat(), packet.ReadFloat());
var unitPosition = new Vector3(packet.ReadFloat(), packet.ReadFloat(), packet.ReadFloat());
packet.Position = packet.Size() - 119;
var missileSpeed = packet.ReadFloat();
packet.Position = 65;
var endPos = new Vector3(packet.ReadFloat(), packet.ReadFloat(), packet.ReadFloat());
packet.Position = 112;
var id = packet.ReadByte();
packet.Position = packet.Size() - 83;
var unit = ObjectManager.GetUnitByNetworkId<Obj_AI_Hero>(packet.ReadInteger());
if ((!unit.IsValid || unit.Team == ObjectManager.Player.Team))
{
return;
}
var spellData = SpellDatabase.GetBySpeed(unit.ChampionName, (int)missileSpeed, id);
if (spellData == null)
{
return;
}
if (spellData.SpellName != "Laser")
{
return;
}
var castTime = Environment.TickCount - Game.Ping / 2 - spellData.Delay
- (int)
(1000 * missilePosition.SwitchYZ().To2D().Distance(unitPosition.SwitchYZ())
/ spellData.MissileSpeed);
//Trigger the skillshot detection callbacks.
TriggerOnDetectSkillshot(
DetectionType.RecvPacket,
spellData,
castTime,
unitPosition.SwitchYZ().To2D(),
endPos.SwitchYZ().To2D(),
unit);
}
}
示例2: DrawLine
public static void DrawLine(Line line, Vector3 from, Vector3 to, ColorBGRA color, Size size = default(Size), float[] scale = null, float rotation = 0.0f)
{
if (line != null)
{
from = from.SwitchYZ();
to = to.SwitchYZ();
Matrix nMatrix = (scale != null ? Matrix.Scaling(scale[0], scale[1], 0) : Matrix.Scaling(1)) *
Matrix.RotationZ(rotation) * Matrix.Translation(from);
Vector3[] vec = { from, to };
line.DrawTransform(vec, nMatrix, color);
}
}
示例3: DrawCircle
/// <summary>
/// Draws the circle.
/// </summary>
/// <param name="position">The position.</param>
/// <param name="radius">The radius.</param>
/// <param name="color">The color.</param>
/// <param name="width">The width.</param>
/// <param name="zDeep">if set to <c>true</c> the circle will be drawn with depth buffering.</param>
public static void DrawCircle(Vector3 position, float radius, Color color, int width = 5, bool zDeep = false)
{
try
{
if (Device == null || Device.IsDisposed)
{
return;
}
if (_vertices == null)
{
CreateVertexes();
}
if (_vertices == null || _vertices.IsDisposed || _vertexDeclaration.IsDisposed || _effect.IsDisposed ||
_technique.IsDisposed)
{
return;
}
var olddec = Device.VertexDeclaration;
_effect.Technique = _technique;
_effect.Begin();
_effect.BeginPass(0);
_effect.SetValue(
"ProjectionMatrix", Matrix.Translation(position.SwitchYZ()) * Drawing.View * Drawing.Projection);
_effect.SetValue(
"CircleColor", new Vector4(color.R / 255f, color.G / 255f, color.B / 255f, color.A / 255f));
_effect.SetValue("Radius", radius);
_effect.SetValue("Border", 2f + width);
_effect.SetValue("zEnabled", zDeep);
Device.SetStreamSource(0, _vertices, 0, Utilities.SizeOf<Vector4>() * 2);
Device.VertexDeclaration = _vertexDeclaration;
Device.DrawPrimitives(PrimitiveType.TriangleList, 0, 2);
_effect.EndPass();
_effect.End();
Device.VertexDeclaration = olddec;
}
catch (Exception e)
{
_vertices = null;
Console.WriteLine(@"DrawCircle: " + e);
}
}
示例4: GameOnOnGameProcessPacket
public static void GameOnOnGameProcessPacket(GamePacketEventArgs args)
{
if (args.PacketData[0] == 0x3B)
{
var packet = new GamePacket(args.PacketData) { Position = 1 };
packet.Read<float>(); //Missile network ID
var missilePosition = new Vector3(packet.Read<float>(), packet.Read<float>(), packet.Read<float>());
var unitPosition = new Vector3(packet.Read<float>(), packet.Read<float>(), packet.Read<float>());
packet.Position = packet.Data.Length - 119;
var missileSpeed = packet.Read<float>();
packet.Position = 65;
var endPos = new Vector3(packet.Read<float>(), packet.Read<float>(), packet.Read<float>());
packet.Position = 112;
var id = packet.Read<byte>();
packet.Position = packet.Data.Length - 83;
var unit = ObjectManager.GetUnitByNetworkId<AIHeroClient>(packet.Read<uint>());
if ((!unit.IsValid || unit.Team == ObjectManager.Player.Team))
{
return;
}
var spellData = SpellDatabase.GetBySpeed(unit.ChampionName, (int) missileSpeed, id);
if (spellData == null)
{
return;
}
if (spellData.SpellName != "Laser")
{
return;
}
var castTime = Environment.TickCount - Game.Ping / 2 - spellData.Delay -
(int)
(1000 * Geometry.SwitchYZ(missilePosition).To2D().Distance(Geometry.SwitchYZ(unitPosition)) /
spellData.MissileSpeed);
TriggerOnDetectSkillshot(
DetectionType.RecvPacket, spellData, castTime, unitPosition.SwitchYZ().To2D(),
endPos.SwitchYZ().To2D(), unit);
}
}
示例5: DrawCircle
//.........这里部分代码省略.........
0x00, 0x00, 0x04, 0x80, 0x00, 0x00, 0xAA, 0x80, 0x00, 0x00, 0x00, 0xA0, 0x23, 0x00, 0x00,
0x02, 0x00, 0x00, 0x04, 0x80, 0x00, 0x00, 0xAA, 0x80, 0x04, 0x00, 0x00, 0x04, 0x00, 0x00,
0x04, 0x80, 0x03, 0x00, 0xFF, 0xA0, 0x00, 0x00, 0xAA, 0x81, 0x03, 0x00, 0xFF, 0xA0, 0x58,
0x00, 0x00, 0x04, 0x00, 0x00, 0x02, 0x80, 0x00, 0x00, 0x55, 0x80, 0x06, 0x00, 0xFF, 0xA0,
0x00, 0x00, 0xAA, 0x80, 0x58, 0x00, 0x00, 0x04, 0x00, 0x00, 0x08, 0x80, 0x00, 0x00, 0x00,
0x80, 0x00, 0x00, 0x55, 0x80, 0x03, 0x00, 0xFF, 0xA0, 0x01, 0x00, 0x00, 0x02, 0x00, 0x00,
0x07, 0x80, 0x02, 0x00, 0xE4, 0xA0, 0x01, 0x00, 0x00, 0x02, 0x00, 0x08, 0x0F, 0x80, 0x00,
0x00, 0xE4, 0x80, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xFF, 0xFF, 0xFF, 0xFF, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4C, 0x01, 0x00,
0x00, 0x00, 0x02, 0xFE, 0xFF, 0xFE, 0xFF, 0x34, 0x00, 0x43, 0x54, 0x41, 0x42, 0x1C, 0x00,
0x00, 0x00, 0x9B, 0x00, 0x00, 0x00, 0x00, 0x02, 0xFE, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x1C,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x94, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x44, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00,
0x00, 0x50, 0x72, 0x6F, 0x6A, 0x65, 0x63, 0x74, 0x69, 0x6F, 0x6E, 0x4D, 0x61, 0x74, 0x72,
0x69, 0x78, 0x00, 0xAB, 0xAB, 0xAB, 0x03, 0x00, 0x03, 0x00, 0x04, 0x00, 0x04, 0x00, 0x01,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0x73, 0x5F, 0x32,
0x5F, 0x30, 0x00, 0x4D, 0x69, 0x63, 0x72, 0x6F, 0x73, 0x6F, 0x66, 0x74, 0x20, 0x28, 0x52,
0x29, 0x20, 0x48, 0x4C, 0x53, 0x4C, 0x20, 0x53, 0x68, 0x61, 0x64, 0x65, 0x72, 0x20, 0x43,
0x6F, 0x6D, 0x70, 0x69, 0x6C, 0x65, 0x72, 0x20, 0x39, 0x2E, 0x32, 0x39, 0x2E, 0x39, 0x35,
0x32, 0x2E, 0x33, 0x31, 0x31, 0x31, 0x00, 0x1F, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x80,
0x00, 0x00, 0x0F, 0x90, 0x1F, 0x00, 0x00, 0x02, 0x0A, 0x00, 0x00, 0x80, 0x01, 0x00, 0x0F,
0x90, 0x09, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, 0xE4, 0x90, 0x00, 0x00,
0xE4, 0xA0, 0x09, 0x00, 0x00, 0x03, 0x00, 0x00, 0x02, 0xC0, 0x00, 0x00, 0xE4, 0x90, 0x01,
0x00, 0xE4, 0xA0, 0x09, 0x00, 0x00, 0x03, 0x00, 0x00, 0x04, 0xC0, 0x00, 0x00, 0xE4, 0x90,
0x02, 0x00, 0xE4, 0xA0, 0x09, 0x00, 0x00, 0x03, 0x00, 0x00, 0x08, 0xC0, 0x00, 0x00, 0xE4,
0x90, 0x03, 0x00, 0xE4, 0xA0, 0x01, 0x00, 0x00, 0x02, 0x00, 0x00, 0x0F, 0xD0, 0x01, 0x00,
0xE4, 0x90, 0x01, 0x00, 0x00, 0x02, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0xE4, 0x90, 0xFF,
0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x02, 0x58,
0x46, 0xFE, 0xFF, 0x25, 0x00, 0x43, 0x54, 0x41, 0x42, 0x1C, 0x00, 0x00, 0x00, 0x5F, 0x00,
0x00, 0x00, 0x00, 0x02, 0x58, 0x46, 0x01, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x20, 0x5C, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x00, 0x00, 0x7A, 0x45, 0x6E,
0x61, 0x62, 0x6C, 0x65, 0x64, 0x00, 0xAB, 0xAB, 0xAB, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00,
0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x78, 0x00, 0x4D,
0x69, 0x63, 0x72, 0x6F, 0x73, 0x6F, 0x66, 0x74, 0x20, 0x28, 0x52, 0x29, 0x20, 0x48, 0x4C,
0x53, 0x4C, 0x20, 0x53, 0x68, 0x61, 0x64, 0x65, 0x72, 0x20, 0x43, 0x6F, 0x6D, 0x70, 0x69,
0x6C, 0x65, 0x72, 0x20, 0x39, 0x2E, 0x32, 0x39, 0x2E, 0x39, 0x35, 0x32, 0x2E, 0x33, 0x31,
0x31, 0x31, 0x00, 0xFE, 0xFF, 0x02, 0x00, 0x43, 0x4C, 0x49, 0x54, 0x00, 0x00, 0x00, 0x00,
0xFE, 0xFF, 0x0C, 0x00, 0x46, 0x58, 0x4C, 0x43, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
0x10, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0,
0xF0, 0xF0, 0xF0, 0x0F, 0x0F, 0x0F, 0x0F, 0xFF, 0xFF, 0x00, 0x00
};
_effect = Effect.FromMemory(Drawing.Direct3DDevice, compiledEffect, ShaderFlags.None);
}
catch (Exception e)
{
Console.WriteLine(e);
return;
}
#endregion
_technique = _effect.GetTechnique(0);
Drawing.OnPreReset += delegate { _effect.OnLostDevice(); };
Drawing.OnPostReset += delegate { _effect.OnResetDevice(); };
AppDomain.CurrentDomain.DomainUnload += delegate
{
_effect.Dispose();
_vertices.Dispose();
_vertexDeclaration.Dispose();
};
}
if (_vertices.IsDisposed || _vertexDeclaration.IsDisposed || _effect.IsDisposed)
{
return;
}
var olddec = Drawing.Direct3DDevice.VertexDeclaration;
_effect.Technique = _technique;
_effect.Begin();
_effect.BeginPass(0);
_effect.SetValue(
"ProjectionMatrix", Matrix.Translation(position.SwitchYZ()) * Drawing.View * Drawing.Projection);
_effect.SetValue(
"CircleColor", new Vector4(color.R / 255f, color.G / 255f, color.B / 255f, color.A / 255f));
_effect.SetValue("Radius", radius);
_effect.SetValue("Border", 2f + width);
_effect.SetValue("zEnabled", zDeep);
Drawing.Direct3DDevice.SetStreamSource(0, _vertices, 0, Utilities.SizeOf<Vector4>() * 2);
Drawing.Direct3DDevice.VertexDeclaration = _vertexDeclaration;
Drawing.Direct3DDevice.DrawPrimitives(PrimitiveType.TriangleList, 0, 2);
_effect.EndPass();
_effect.End();
Drawing.Direct3DDevice.VertexDeclaration = olddec;
}