Entity does not exist
Übersicht

TOONYBetreff: Entity does not exist |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo,
ich habe folgende Fehlermeldung bei meinem Code: "Entity does not exist" Ich speiche einige Entitys in einem Array und möchte die Entitys mit F1 sofort löschen. Teilweise kommt dabei diese Fehlermeldung. Allerdings doch vorher überprüft ob die Entity überhaput existiert, bevor sie gelöscht wird. Dann dürfte doch keine Fehlermeldung kommen? kann mir jemand weiterhelfen? p.s. Der Befehl "Freeentity" ist bei der Fehlermeldung markiert! Code: [AUSKLAPPEN] if keyhit(59) For x = 1 To 32 For y = 1 To 32 For z = 1 To 32 For s = 1 To 6; If entitymap(x,y,z,s) <> 0 Then FreeEntity(entitymap(x,y,z,s)) Next Next Next Next endif |
||
![]() |
aMulSieger des Minimalist Compo 01/13 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich vermute, dass du Werte in deinem Array auf ungleich null hast, die allerdings keinem Entity entsprechen.
Das kann passieren wenn du vor diesem Code irgendwo schon einmal Entities gelöscht hast, und dann den Wert im Array nicht auf null zurückgesetzt hast. Alternativ: Bist du dir sicher, dass die Werte 32 nicht ausserhalb des Arrays liegen? Array-Indices fangen bei 0 an, das heißt, wenn das Array 32 lang ist, dann hat es Einträge 0 bis 31. |
||
Panic Pong - ultimate action mashup of Pong and Breakout <= aktives Spiele-Projekt, Downloads mit vielen bunten Farben!
advASCIIdraw - the advanced ASCII art program <= aktives nicht-Spiele-Projekt, must-have für ASCII/roguelike/dungeon-crawler fans! Alter BB-Kram: ThroughTheAsteroidBelt - mit Quelltext! | RGB-Palette in 32²-Textur / Farbige Beleuchtung mit Dot3 | Stereoskopie in Blitz3D | Teleport-Animation Screensaver |
TOONY |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das Array habe ich auf Dim Entitymap (200,200,200,10) gesetzt. Es sollte also noch genug platz frei sein.
Gibt es denn eine andere möglichkeit zu Überprüfen ob diese Entity existiert, bevor man sie löscht? |
||
![]() |
PSY |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi,
wenn du die entitys mit freeentity loeschst, wird nur das entity an sich geloescht. der handle im dimfeld bleibt bestehen. verwende types, oder eine mischung aus dim und types, oder setzt einfach das dimfeld auf 0, wenn du das betreffende entity loeschst: Code: [AUSKLAPPEN] if keyhit(59)
For x = 1 To 32 For y = 1 To 32 For z = 1 To 32 For s = 1 To 6; If entitymap(x,y,z,s) <> 0 Then FreeEntity(entitymap(x,y,z,s)) : entitymap(x,y,z,s)=0 Next Next Next Next endif PSY |
||
PSY LABS Games
Coders don't die, they just gosub without return |
TOONY |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group