Imports System.ComponentModel Imports VisualEngine.Engine Namespace Engine Public Class Layer Protected Property UniqueId As Guid Public Property Game As Game 'Engine-Level Property Public lstEntity As New Entities Public Property EntityList As Entities Get Return lstEntity End Get Set(ByVal value As Entities) lstEntity = value End Set End Property Public Shared CollisionList As New Coliders Public Property ColiderList As Coliders Get Return CollisionList End Get Set(ByVal value As Coliders) CollisionList = value End Set End Property Public Shared lstTileMaps As New Resource._TileMaps Public Shared Property TileMaps As Resource._TileMaps Get Return lstTileMaps End Get Set(ByVal value As Resource._TileMaps) lstTileMaps = value End Set End Property Public MovementList As New Frames.Movements Public Property EnitityMovement As Frames.Movements Get Return MovementList End Get Set(ByVal value As Frames.Movements) MovementList = value End Set End Property Sub New(newgame As Game) UniqueId = Guid.NewGuid() Game = newgame End Sub End Class Public Class Layers Inherits List(Of Layer) Public Property Game As Game Public Shadows Sub Add(Layer As Layer) 'Dim instantiatedType As Object = Activator.CreateInstance(typeToInstantiate, System.Reflection.BindingFlags.NonPublic Or System.Reflection.BindingFlags.Instance, Nothing, New Object() {parameter}, Nothing) Layer.Game = Game MyBase.Add(Layer) End Sub Sub New(newgame As Game) Game = newgame End Sub End Class End Namespace