public override void onEntityTransformChanged(Transform.Component comp)
 {
     if (comp == Transform.Component.Scale)
     {
         recreateFixture();
     }
 }
        public override void onEntityTransformChanged(Transform.Component comp)
        {
            base.onEntityTransformChanged(comp);

            // our sprite is disabled so we need to forward the call over to it so it can update its bounds for rendering
            _sprite.onEntityTransformChanged(comp);
        }
Ejemplo n.º 3
0
Archivo: Bar.cs Proyecto: toyboot4e/Rot
 public override void OnEntityTransformChanged(Transform.Component comp)
 {
     foreach (var bar in this.bars)
     {
         bar?.OnEntityTransformChanged(comp);
     }
 }
Ejemplo n.º 4
0
 internal void onEntityTransformChanged(Transform.Component comp)
 {
     for (var i = 0; i < _colliders.Count; i++)
     {
         _colliders[i].onEntityTransformChanged(comp);
     }
 }
Ejemplo n.º 5
0
 public override void OnEntityTransformChanged(Transform.Component comp)
 {
     foreach (var r in this.subs)
     {
         r.OnEntityTransformChanged(comp);
     }
 }
Ejemplo n.º 6
0
        public override void OnEntityTransformChanged(Transform.Component comp)
        {
            base.OnEntityTransformChanged(comp);
            if (_ignoreTransformChanges)
            {
                return;
            }

            // we only care about scale. base handles pos/rot
            if (comp == Transform.Component.Scale)
            {
                // fetch the Vertices, clear them, add our originals and scale them
                var poly  = Body.FixtureList[0].Shape as PolygonShape;
                var verts = poly.Vertices;
                verts.Clear();
                verts.AddRange(_verts);
                verts.Scale(Transform.Scale);
                poly.SetVerticesNoCopy(verts);

                // wake the body if it is asleep to update collisions
                if (!Body.IsAwake)
                {
                    Body.IsAwake = true;
                }
            }
        }
 public override void onEntityTransformChanged(Transform.Component comp)
 {
     // we only deal with positional changes here. TiledMaps cant be scaled.
     if (_shouldCreateColliders && comp == Transform.Component.Position)
     {
         removeColliders();
         addColliders();
     }
 }
Ejemplo n.º 8
0
        public override void onEntityTransformChanged(Transform.Component comp)
        {
            base.onEntityTransformChanged(comp);

            if (comp == Transform.Component.Rotation)
            {
                // when rotation changes we need to update our verts to account for the new rotation
                Polygon.rotatePolygonVerts(entity.rotation - _spotAngle * 0.5f * Mathf.deg2Rad, _polygon._originalPoints, _polygon.points);
            }
        }
Ejemplo n.º 9
0
        public override void OnEntityTransformChanged(Transform.Component comp)
        {
            // we dont care if the transform changed if we are in world space
            if (UseWorldSpace)
            {
                return;
            }

            _bounds.CalculateBounds(Entity.Transform.Position, _localOffset, Vector2.Zero, Entity.Transform.Scale, Entity.Transform.Rotation, Width, Height);
        }
Ejemplo n.º 10
0
        public override void onEntityTransformChanged(Transform.Component comp)
        {
            // we dont care if the transform changed if we are in world space
            if (useWorldSpace)
            {
                return;
            }

            _bounds.calculateBounds(entity.transform.position, _localOffset, Vector2.Zero, entity.transform.scale, entity.transform.rotation, width, height);
        }
Ejemplo n.º 11
0
 internal void onEntityTransformChanged(Transform.Component comp)
 {
     for (var i = 0; i < _components.length; i++)
     {
         if (_components.buffer[i].enabled)
         {
             _components.buffer[i].onEntityTransformChanged(comp);
         }
     }
 }
Ejemplo n.º 12
0
        public override void onEntityTransformChanged(Transform.Component comp)
        {
            base.onEntityTransformChanged(comp);
            if (_ignoreTransformChanges)
            {
                return;
            }

            // we only care about scale. base handles pos/rot
            if (comp == Transform.Component.Scale)
            {
                body.fixtureList[0].shape.radius = _subtexture.sourceRect.Width * transform.scale.X * 0.5f * FSConvert.displayToSim;
            }
        }
Ejemplo n.º 13
0
        public override void OnEntityTransformChanged(Transform.Component comp)
        {
            base.OnEntityTransformChanged(comp);
            if (_ignoreTransformChanges)
            {
                return;
            }

            // we only care about scale. base handles pos/rot
            if (comp == Transform.Component.Scale)
            {
                Body.FixtureList[0].Shape.Radius = _subtexture.SourceRect.Width * Transform.Scale.X * 0.5f * FSConvert.DisplayToSim;
            }
        }
Ejemplo n.º 14
0
        public override void OnEntityTransformChanged(Transform.Component comp)
        {
            if (_ignoreTransformChanges || Body == null)
            {
                return;
            }

            if (comp == Transform.Component.Position)
            {
                Body.Position = Transform.Position * FSConvert.DisplayToSim;
            }
            else if (comp == Transform.Component.Rotation)
            {
                Body.Rotation = Transform.Rotation;
            }
        }
        public override void onEntityTransformChanged(Transform.Component comp)
        {
            if (_ignoreTransformChanges || body == null)
            {
                return;
            }

            if (comp == Transform.Component.Position)
            {
                body.position = transform.position * FSConvert.displayToSim;
            }
            else if (comp == Transform.Component.Rotation)
            {
                body.rotation = transform.rotation;
            }
        }
Ejemplo n.º 16
0
        public override void OnEntityTransformChanged(Transform.Component comp)
        {
            _areBoundsDirty = true;
            if (_ignoreTransformChanges)
            {
                return;
            }

            if (comp == Transform.Component.Position)
            {
                Body.Position = Transform.Position * FSConvert.DisplayToSim;
            }
            else if (comp == Transform.Component.Rotation)
            {
                Body.Rotation = Transform.Rotation;
            }
        }
Ejemplo n.º 17
0
        public override void onEntityTransformChanged(Transform.Component comp)
        {
            _areBoundsDirty = true;
            if (_ignoreTransformChanges)
            {
                return;
            }

            if (comp == Transform.Component.Position)
            {
                body.Position = transform.position * ConvertUnits.displayToSim;
            }
            else if (comp == Transform.Component.Rotation)
            {
                body.Rotation = transform.rotation;
            }
        }
Ejemplo n.º 18
0
        internal void OnEntityTransformChanged(Transform.Component comp)
        {
            for (var i = 0; i < _components.Length; i++)
            {
                if (_components.Buffer[i].Enabled)
                {
                    _components.Buffer[i].OnEntityTransformChanged(comp);
                }
            }

            for (var i = 0; i < _componentsToAdd.Count; i++)
            {
                if (_componentsToAdd[i].Enabled)
                {
                    _componentsToAdd[i].OnEntityTransformChanged(comp);
                }
            }
        }
Ejemplo n.º 19
0
        public override void onEntityTransformChanged(Transform.Component comp)
        {
            base.onEntityTransformChanged(comp);
            if (_ignoreTransformChanges)
            {
                return;
            }

            // we only care about scale. base handles pos/rot
            if (comp == Transform.Component.Scale)
            {
                // fetch the Vertices, clear them, add our originals and scale them
                var poly  = body.FixtureList[0].Shape as PolygonShape;
                var verts = poly.Vertices;
                verts.Clear();
                verts.AddRange(_verts);
                verts.Scale(transform.scale);
                poly.Vertices = verts;
            }
        }
Ejemplo n.º 20
0
        public override void onEntityTransformChanged(Transform.Component comp)
        {
            base.onEntityTransformChanged(comp);

            if (entityCanTransition)
            {
                var transitionBlocks = GetTransitionBlocks();

                foreach (TiledTile tile in transitionBlocks.tiles)
                {
                    if (tile == null)
                    {
                        continue;
                    }

                    var tilePosition = getTilePosition(tile);

                    if (entityIsInsideofTile(tilePosition))
                    {
                        foreach (SceneChangeMapper nextSceneLink in ((ExtendedScene)entity.scene).getTransitions())
                        {
                            if (isSceneToLoad(nextSceneLink))
                            {
                                Core.startSceneTransition(new FadeTransition(() => nextSceneLink.scene));

                                entity.detachFromScene();
                                entity.attachToScene(nextSceneLink.scene);


                                entityCanTransition = false;
                                Core.schedule(TimeToWaitAfterNewSceneTransitionIsAllowed, t => entityCanTransition = true);

                                break;
                            }
                        }
                    }
                }
            }
        }
Ejemplo n.º 21
0
        public virtual void onEntityTransformChanged(Transform.Component comp)
        {
            // set the appropriate dirty flags
            switch (comp)
            {
            case Transform.Component.Position:
                _isPositionDirty = true;
                break;

            case Transform.Component.Scale:
                _isPositionDirty = true;
                break;

            case Transform.Component.Rotation:
                _isRotationDirty = true;
                break;
            }

            if (_isColliderRegistered)
            {
                Physics.updateCollider(this);
            }
        }
Ejemplo n.º 22
0
        public override void OnEntityTransformChanged(Transform.Component comp)
        {
            base.OnEntityTransformChanged(comp);
            if (_ignoreTransformChanges)
            {
                return;
            }

            // we only care about scale. base handles pos/rot
            if (comp == Transform.Component.Scale)
            {
                // fetch the Vertices, clear them, add our originals and scale them
                for (int i = 0; i < Body.FixtureList.Count; i++)
                {
                    PolygonShape poly  = Body.FixtureList[i].Shape as PolygonShape;
                    Vertices     verts = poly.Vertices;
                    verts.Clear();
                    verts.AddRange(_verts[i]);
                    verts.Scale(Transform.Scale);
                    poly.Vertices = verts;
                }
            }
        }
Ejemplo n.º 23
0
 public override void OnEntityTransformChanged(Transform.Component comp)
 {
     this.chip.anim.OnEntityTransformChanged(comp);
     this.bar?.OnEntityTransformChanged(comp);
 }
Ejemplo n.º 24
0
 /// <summary>
 /// called when the entity's position changes. This allows components to be aware that they have moved due to the parent
 /// entity moving.
 /// </summary>
 public virtual void onEntityTransformChanged(Transform.Component comp)
 {
 }
Ejemplo n.º 25
0
 internal void OnTransformChanged(Transform.Component comp)
 {
     // notify our children of our changed position
     Components.OnEntityTransformChanged(comp);
 }
Ejemplo n.º 26
0
 public override void onEntityTransformChanged(Transform.Component comp)
 {
     _areBoundsDirty = true;
 }
Ejemplo n.º 27
0
 internal void onTransformChanged(Transform.Component comp)
 {
     // notify our children of our changed position
     components.onEntityTransformChanged(comp);
     colliders.onEntityTransformChanged(comp);
 }
Ejemplo n.º 28
0
 public override void onEntityTransformChanged(Transform.Component comp)
 {
     forceMatrixUpdate();
 }
Ejemplo n.º 29
0
 public override void OnEntityTransformChanged(Transform.Component comp)
 {
     _areMatrixesDirty = true;
 }