Exemple #1
0
        public Unit CreateUnit(UnitDef unitDef)
        {
            var bodydef = new BodyDef();
            bodydef.type = unitDef.BodyType;
            bodydef.angle = unitDef.RotateZ;
            bodydef.fixedRotation = unitDef.FixedRotation;
            bodydef.position.X = B2Value(unitDef.X);
            bodydef.position.Y = B2Value(unitDef.Y);
            Body body = _world.CreateBody(bodydef);

            var unit = new Unit(body, this);
            unit.Group = unitDef.Group;
            body.SetUserData(unit);
            return unit;
        }
Exemple #2
0
 public Unit CreatePolygon(UnitDef unitDef, Vector2[] verteces)
 {
     Unit unit = CreateUnit(unitDef);
     unit.AttachPolygon(verteces, unitDef.Density, unitDef.Fraction, unitDef.Restitution);
     return unit;
 }
Exemple #3
0
 public Unit CreateRectangle(UnitDef unitDef, float width, float height)
 {
     Unit unit = CreateUnit(unitDef);
     unit.AttachRectangle(width, height, unitDef.Density, unitDef.Fraction, unitDef.Restitution);
     return unit;
 }
Exemple #4
0
 public Unit CreateCircle(UnitDef unitDef, float radius)
 {
     Unit unit = CreateUnit(unitDef);
     unit.AttachCircle(radius, unitDef.Density, unitDef.Fraction, unitDef.Restitution);
     return unit;
 }