GameEntities.Dynamic.OnDieObjectCreate C# (CSharp) Method

OnDieObjectCreate() protected method

protected OnDieObjectCreate ( MapObjectCreateObject createObject, object objectCreated ) : void
createObject MapObjectCreateObject
objectCreated object
return void
        protected override void OnDieObjectCreate( MapObjectCreateObject createObject,
            object objectCreated)
        {
            base.OnDieObjectCreate( createObject, objectCreated );

            MapObjectCreateMapObject createMapObject = createObject as MapObjectCreateMapObject;
            if( createMapObject != null )
            {
                MapObject mapObject = (MapObject)objectCreated;

                //Copy information to dead object
                //if( Type.Name + "Dead" == mapObject.Type.Name )
                if( createMapObject.CopyVelocitiesFromParent )
                {
                    Dynamic dynamic = mapObject as Dynamic;
                    if( dynamic != null )
                        CopyInfluencesToObject( dynamic );
                }

                //random rotation
                if( createMapObject.Alias == "randomRotation" )
                {
                    Bullet bullet = mapObject as Bullet;
                    if( bullet != null )
                    {
                        bullet.Rotation = new Angles(
                            World.Instance.Random.NextFloat() * 180.0f,
                            World.Instance.Random.NextFloat() * 180.0f,
                            World.Instance.Random.NextFloat() * 180.0f ).ToQuat();

                        bullet.Velocity = bullet.Rotation.GetForward() * bullet.Type.Velocity;
                    }
                }
            }
        }