Object does no exist

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Jo0oker

Betreff: Object does no exist

BeitragMo, Jan 22, 2007 19:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo leute,
folgendes problem:
Ich will in meiner hauptschleife eine Function einbauen, hat auch geklappt nur wenn ich jetzt das Programm starte dann sagt er immer "Object does no exist" Question
Wenn ich die Function hinaus nehem geht der rest wieder Exclamation
lg Jo0oker
Tehadon, das kostenlose 3D RPG
www.tehadon.de
http://www.blitzforum.de/worklogs/14/
Das Abenteuer wird beginnen!
 

konstantin

BeitragMo, Jan 22, 2007 19:43
Antworten mit Zitat
Benutzer-Profile anzeigen
drueck dich bitte deutlicher aus.

hast du die funktion als solche -in- der hauptschleife definiert? das waer ziemlich witzlos.

ToeB

BeitragMo, Jan 22, 2007 19:49
Antworten mit Zitat
Benutzer-Profile anzeigen
dU musst das Object, wenn es in einer Function verwendet wird, im Haubtprogramm Globaliesieren.
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

Jo0oker

BeitragMo, Jan 22, 2007 19:49
Antworten mit Zitat
Benutzer-Profile anzeigen
nein z.B:



Code: [AUSKLAPPEN]


Graphics3d .....
setbuffer back....
camrea=createcamera()


person = loadmesh.........

positionentity person,0,-1,4



while not keyhit(1)

updateworld
renderworld
laufen()

flip

wend

end

Function laufen


....meine functionen.....

end function




wo bei die Punkte den rest ergänzen.

lg Jo0oker[/code]
Tehadon, das kostenlose 3D RPG
www.tehadon.de
http://www.blitzforum.de/worklogs/14/
Das Abenteuer wird beginnen!

ToeB

BeitragMo, Jan 22, 2007 19:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Crack93 hat Folgendes geschrieben:
dU musst das Object, wenn es in einer Function verwendet wird, im Haubtprogramm Globaliesieren.


Ja ! Das ist doch das thema Rolling Eyes !
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

Jo0oker

BeitragMo, Jan 22, 2007 19:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Das heißt?
lg Jo0oker
Tehadon, das kostenlose 3D RPG
www.tehadon.de
http://www.blitzforum.de/worklogs/14/
Das Abenteuer wird beginnen!

pixelshooter

BeitragMo, Jan 22, 2007 20:01
Antworten mit Zitat
Benutzer-Profile anzeigen
vor die variable, die die ausnahme erzeugt, bei der definition "Global" schreiben

Jo0oker

BeitragMo, Jan 22, 2007 20:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Das habe ich gemacht.(also schon vorher)
Es geht aber immer noch nicht.


lg Jo0oker
Tehadon, das kostenlose 3D RPG
www.tehadon.de
http://www.blitzforum.de/worklogs/14/
Das Abenteuer wird beginnen!

FreetimeCoder

BeitragMo, Jan 22, 2007 20:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
wo bei die Punkte den rest ergänzen.


Wäre es nicht angebracht den besagten Rest zu zeigen, wo der Fehler wahrscheinlich drinsteckt?
Rolling Eyes
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte:
Dexterity Ball (100%)
Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz
(ehemals Uboot)
PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA

Holzchopf

Meisterpacker

BeitragMo, Jan 22, 2007 20:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Kann der 'Object does not exist'-Fehler auftreten wenn keine Types im Spiel sind? Ich glaub nicht. Zeig doch einfach mal mindestens den Teil, wo du die Types definierst, erstellst und wo immer du versuchst drauf zuzugreifen.

Und natürlich die Stelle, wo der Fehler auftritt.
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm

skey-z

BeitragMo, Jan 22, 2007 20:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Hier mal ein Code, der funktioniert, ohne dass das Objekt Global ist, den Mesh' würde ich nicht global machen:

Code: [AUSKLAPPEN]

Graphics3D 800, 600, 32, 2
SetBuffer BackBuffer()


cam = CreateCamera()
   PositionEntity cam, 0, 0, -5

light = CreateLight()
   RotateEntity light, 90, 0, 0
   
cube = CreateCube()


Repeat

   If KeyDown(203) Then
      drehen(cube, 1)
   ElseIf KeyDown(205)
      drehen(cube, -1)
   EndIf

   RenderWorld
   
   Flip
   
   Cls
   
Until KeyHit(1)


End


Function drehen(obj%, speed#)
   
   TurnEntity obj, 0, speed, 0
   
End Function
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

Jo0oker

BeitragMo, Jan 22, 2007 21:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Der coder:
Code: [AUSKLAPPEN]

Graphics3D 1024,768,32,2
SetBuffer BackBuffer()
light = CreateLight()
PositionEntity light ,0,0,0
  Global     gegner

Type waypoint
 Field x
 Field y
 Field z
End Type
gegnerx = 0
gegnery = 0
gegnerz = 4

camera = CreateCamera()
PositionEntity camera,0,2,0
gegner=LoadMesh("Ipanz.X")
 PositionEntity gegner,gegnerx,gegnery,gegnerz



map=LoadMesh("map2.X")
 PositionEntity map,0,0,4




ScaleEntity map,9,9,9


While Not KeyHit(1)

waypoint()

UpdateWorld
RenderWorld
TurnEntity gegner,0,0.3,0

Flip
Wend
End






lg Jo0oker
Tehadon, das kostenlose 3D RPG
www.tehadon.de
http://www.blitzforum.de/worklogs/14/
Das Abenteuer wird beginnen!

Holzchopf

Meisterpacker

BeitragMo, Jan 22, 2007 21:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Jo0oker hat Folgendes geschrieben:

Code: [AUSKLAPPEN]

Type waypoint
 Field x
 Field y
 Field z
End Type

...

waypoint()



Sehr schön, jetzt fehlt nur noch die Funktion waypoint und die Stelle, wo der Fehler auftritt.
Rolling Eyes
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm

Jo0oker

BeitragMo, Jan 22, 2007 21:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Das ist die Funktio:
Code: [AUSKLAPPEN]



Function waypoint()



w.waypoint=First waypoint
 mx=w\x-gegnerx
 my=w\y-gegnery
 mz=w\z-gegnerz
 ;den vektor normalisieren, damit geschw. konstant bleibt
 fctr#=1./Sqr(mx^2+my^2+mz^2)
 mx=mx*fctr#
 my=my*fctr#
 mz=mz*fctr#
 TranslateEntity gegner,mx,my,mz
 ;gegner drehen ... befehl vergessen :S
 
 If positiongegner = position waypoint
  Delete w.waypoint
  w.waypoint=First waypoint
 ;EndIf
End Function



lg Jo0oker[/code]
Tehadon, das kostenlose 3D RPG
www.tehadon.de
http://www.blitzforum.de/worklogs/14/
Das Abenteuer wird beginnen!

robotx

BeitragMo, Jan 22, 2007 21:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Du erstellst ja gar keinen waypoint (Type). Trotzdem greifst du in der Funktion auf einen zu mit w.waypoint = First waypoint.

Oder bin ich blind?!

mfg robotx
www.botbomb.robotzgames.de
www.robotzgames.de

5k41

BeitragMo, Jan 22, 2007 21:38
Antworten mit Zitat
Benutzer-Profile anzeigen
liegt daran, dass first waypoint nach dem löschen und vor dem erstellen eines waypoints nicht existiert! du muss nach w.waypoint=First waypoint um den rest ein if w.waypoint <> Null einbauen!

MfG
Projekte:
For a better World - Gesellschaftsspiel ( 100%)

User posted image

Holzchopf

Meisterpacker

BeitragMo, Jan 22, 2007 21:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Hmm jetzt fehlt eigentlich nur noch die Zeile, wo der Fehler auftritt.

Aber ich versuchs mal zu erraten. Tritt der Fehler zufälligerweise genau in der Zeile
Code: [AUSKLAPPEN]
mx=w\x-gegnerx
auf?
Meine vermutung ist ja, dass du die Funktion schon aufrufst, bevor du überhaupt Waypoints erstellst.

Probiers mal so:
Code: [AUSKLAPPEN]

Function waypoint()
 w.waypoint=First waypoint
 If w <> Null Then ; Das  hier!
  mx=w\x-gegnerx
  my=w\y-gegnery
  mz=w\z-gegnerz
  ;den vektor normalisieren, damit geschw. konstant bleibt
  fctr#=1./Sqr(mx^2+my^2+mz^2)
  mx=mx*fctr#
  my=my*fctr#
  mz=mz*fctr#
  TranslateEntity gegner,mx,my,mz
  ;gegner drehen ... befehl vergessen :S
 
  If positiongegner = position waypoint
   Delete w.waypoint
   w.waypoint=First waypoint
  EndIf
 Endif
End Function


Dann kommt er nicht auf die Idee auf das Objekt zugreiffen zu wollen, wenn noch gar keines erstellt wurde.

MfG

Edit: Verdammt bin ich langsam... Sad
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm

Jo0oker

BeitragMo, Jan 22, 2007 21:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke die fehler sind weg Razz


lg Jo0oker
Tehadon, das kostenlose 3D RPG
www.tehadon.de
http://www.blitzforum.de/worklogs/14/
Das Abenteuer wird beginnen!

FreetimeCoder

BeitragMo, Jan 22, 2007 23:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Die Problemlösung hat nun fast nichts mehr mit dem am Anfang erklärten Problem zu tun. Soll heißen, du hast es so beschrieben, als wenn es an der Variable "Person" liegt.

Also frag demnächst nicht: "Ich hab 'Memory Access Violation', woran kann das liegen?", sondern lerne, den Debugger zu benutzen!

Der gibt ganz genau die Fehlerzeile an. In dieser Zeile könnte man dann ja mal anfangen nach dem Fehler zu suchen. Und nicht Code posten, der nichts mit dem Fehler zu tun hat und den fehlerhaften Code weglassen.


Rolling Eyes
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte:
Dexterity Ball (100%)
Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz
(ehemals Uboot)
PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group