Public Class Shader Public Position As Vector3 Public Size As Vector3 Public Shader As Vector3 Public StopOnContact As Boolean Public HasBeenApplied As Boolean = False Public Sub New(ByVal Position As Vector3, ByVal Size As Vector3, ByVal Shader As Vector3, ByVal StopOnContact As Boolean) Me.Position = Position Me.Size = Size Me.Shader = Shader Me.StopOnContact = StopOnContact End Sub Public Sub ApplyShader(ByVal Entities() As Entity) For x = 0 To Size.X - 1 For z = 0 To Size.Z - 1 For Each e As Entity In Entities If StopOnContact = True Then If CInt(e.Position.X) = x + Position.X And CInt(e.Position.Z) = z + Position.Z And e.Position.Y <= Position.Y Then e.Shaders.Add(Shader) End If Else If CInt(e.Position.X) = x + Position.X And CInt(e.Position.Z) = z + Position.Z And e.Position.Y <= Position.Y + Size.Y And e.Position.Y >= Position.Y Then e.Shaders.Add(Shader) End If End If Next Next Next Me.HasBeenApplied = True End Sub End Class