ForEach Problem
Verfasst: 18.05.2006 17:46
Hi
Ich habe grad an einem kleinen Weltraumshooter geschrieben aber jetzt habe ich ein Problem mit dem ForEach. Pb gibt immer eine FehlerMeldung an "ForEach() is not a function,an arrey or linked list" (wenn ich das programm starten will) aber ich habe doch
dámit ist es doch "an list" oder ?
Kann mir bitte jemand helfen?
ich stell den code mal rein
Ich habe grad an einem kleinen Weltraumshooter geschrieben aber jetzt habe ich ein Problem mit dem ForEach. Pb gibt immer eine FehlerMeldung an "ForEach() is not a function,an arrey or linked list" (wenn ich das programm starten will) aber ich habe doch
Code: Alles auswählen
NewList RoketI.RoketI()
Kann mir bitte jemand helfen?
ich stell den code mal rein
Code: Alles auswählen
InitMovie()
InitSprite()
InitKeyboard()
InitMouse()
InitSound()
OpenScreen(1024,768,32,"name")
Global PlayerX.w
Global PlayerY.w
PlayerX = 300
PlayerY = 300
LoadSprite(0, "F:\Dokumente und Einstellungen\???\Desktop\flayer\Bilder\player.bmp")
LoadSprite(1,"F:\Dokumente und Einstellungen\???\Desktop\flayer\Bilder\RoketI.bmp")
Structure RoketI
x.l
y.l
speedX.l
speedY.l
EndStructure
NewList RoketI.RoketI()
Procedure AddRoketI(x, y, speedX, speedY) ;Eine Prozedur zur Vereinfung der Weiteren Arbeit
AddElement(RoketI())
RoketI()\x = x
RoketI()\y = y
RoketI()\speedX = speedX
RoketI()\speedY = speedY
EndProcedure
Repeat
ExamineMouse()
ExamineKeyboard()
ClearScreen(0,255,0)
DisplayTransparentSprite(0,PlayerX,PlayerY)
; Steuerung
If KeyboardPushed(#PB_key_Left)
PlayerX - 2
EndIf
If KeyboardPushed(#PB_key_Right)
PlayerX + 2
EndIf
If KeyboardPushed(#PB_key_up)
PlayerY - 2
EndIf
If KeyboardPushed(#PB_key_Down)
PlayerY + 2
EndIf
If KeyboardPushed (#PB_key_LeftControl)
AddRoketI(playerX+25, playerY-3, 10, 0)
EndIf
ForEach(RoketI())
If RoketI()\x > 800 : DeleteElement(RoketI())
ElseIf RoketI()\x < 0 : DeleteElement(RoketI())
ElseIf RoketI()\y > 600 : DeleteElement(RoketI())
ElseIf RoketI()\y < 0 : DeleteElement(RoketI())
EndIf
Next
ForEach(RoketI())
DisplayTransparentSprite(RoketI, RoketI()\x, RoketI()\y)
RoketI()\x + RoketI()\speedX
RoketI()\y + RoketI()\speedY
Next
Return
FlipBuffers()
Until KeyboardPushed(1):End