33d46b0cd7
* Fixing rectangle placement in Farseer + * - Moving base.draw to last in AxiosGameScreen to make sure Farseer debug information is visible
44 lines
1.2 KiB
C#
44 lines
1.2 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using FarseerPhysics.Dynamics;
|
|
using FarseerPhysics.Common;
|
|
using FarseerPhysics.SamplesFramework;
|
|
using FarseerPhysics.Factories;
|
|
using Microsoft.Xna.Framework.Content;
|
|
using Microsoft.Xna.Framework.Graphics;
|
|
using Microsoft.Xna.Framework;
|
|
|
|
namespace Axios.Engine.Gleed2D
|
|
{
|
|
public partial class PathItem : Item
|
|
{
|
|
public Vector2[] LocalPoints;
|
|
public Vector2[] WorldPoints;
|
|
public bool IsPolygon;
|
|
public int LineWidth;
|
|
public Color LineColor;
|
|
|
|
Body _body;
|
|
|
|
public PathItem()
|
|
{
|
|
}
|
|
|
|
public override void load(ContentManager cm, World world, ref Dictionary<string, Texture2D> cache)
|
|
{
|
|
base.load(cm, world, ref cache);
|
|
|
|
Vertices v = new Vertices(LocalPoints.Length);
|
|
foreach (Vector2 vec in LocalPoints)
|
|
v.Add(new Vector2(ConvertUnits.ToSimUnits(vec.X), ConvertUnits.ToSimUnits(vec.Y)));
|
|
|
|
_body = BodyFactory.CreateLoopShape(world, v);
|
|
_body.Position = ConvertUnits.ToSimUnits(this.Position);
|
|
_body.UserData = this;
|
|
}
|
|
|
|
}
|
|
}
|