2016-03-09 3 views
0

Я пытаюсь сделать игру, используя VB, так что я сделал этот класс:ошибка с добавлением элемента в список

Imports Microsoft.VisualBasic.PowerPacks 
    Module EntityI 
    Public entities As List(Of Entity) 
    Public Function getEntity(ByVal uuid As Guid) As Entity 
    For i = 0 To entities.Count - 1 
     If entities.Item(i).getUUID = uuid Then 
      Return entities.Item(i) 
     End If 
    Next 
    Return Nothing 
End Function 
    End Module 
    Public Class Entity 
Private uuid As Guid 
Private location As Location 
Private shape As OvalShape 

Public Sub New() 
    uuid = System.Guid.NewGuid 
    Dim canvas As New PowerPacks.ShapeContainer 
    canvas.Parent = Game 
    shape = New OvalShape With {.Parent = canvas} 
    shape.SetBounds(50, 50, 50, 50) 
    save() 
End Sub 
Public Function getUUID() As Guid 
    Return uuid 
End Function 
Public Function getLocation() As Location 
    Return location 
End Function 
Public Sub teleport(ByVal location As Location) 
    Me.location = location 
End Sub 
Private Sub save() 
entities.add(Me) 
End Sub 
End Class 

Таким образом, это дает ошибку при entities.add (Me) (NullRefernceException). Это что-то со списком или чем-то еще? Помогите пожалуйста.

ответ

1

Вы должны иметь

Public entities As New List(Of Entity) 
+0

Спасибо за помощь! –

+0

Спасибо за помощь! –

0

Вы новый список. Вы только объявляете переменную как список. Изменение Public entities As List(Of Entity) по Public entities As New List(Of Entity)

+0

Тот же ответ, что и у Карена^ –

+0

Ваш прием :-) –

Смежные вопросы