type problem
Übersicht

TarnumBetreff: type problem |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ich hab hier ma was versucht und da kommt immer das problem "variable must be a type"
das sind nur teile daraus, weil der ganze code glaubich nur zeitverschwendung wär hier der code : Code: [AUSKLAPPEN] Type boot Field x Field y Field leben Field frame End Type schiff.boot = New boot Function tastenabfrage () ;jetzt kommt der fehler mit variable must be a type If KeyDown (205) And schiff\x < 600 Then schiff\x = schiff\x + 1 EndIf If KeyDown (205) And schiff\x > 0 Then schiff\x = schiff\x - 1 EndIf If KeyDown (200) And schiff\y < 300 Then schiff\y = schiff\y + 1 EndIf If KeyDown (208) And schiff\y > 50 Then schiff\y = schiff\y - 1 EndIf If KeyHit (57) Then schuss.schusstype = New schusstype schuss\x = schiff\x schuss\y = schiff\y schuss.schusstype = New schusstype schuss\x = schuss\x schuss\y = schiff\y EndIf End Function |
||
![]() |
sbrog |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] If KeyHit (57) Then schuss.schusstype = New schusstype schuss\x = schiff\x schuss\y = schiff\y schuss.schusstype = New schusstype schuss\x = schuss\x schuss\y = schiff\y EndIf hier liegt der fehler für schuss auch ein type erstellen ! Füge mal diesen code am anfang ein,dann sollte es klappen Code: [AUSKLAPPEN] Type schusstype field x fieldy End type Soweit man das in diesem code erkennen kann, benutzt du den Type boot nur für den spieler. Da dieser nur einmal vorkommt, solltest du variablen nehmen |
||
Tarnum |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ne das mit schuss is nich das problem, hab ich vorher auch mit type versehen :
Code: [AUSKLAPPEN] Type schusstype Field x Field y Field art End Type Der fehler kommt schon bei den tastenbewegungen... kanns sein dass das daran liegt, das das ganze in einer funktion ist und ich es global machen soltle oder so? mit global type gehts auf jeden fal nich ![]() |
||
HOT-BITGast |
![]() Antworten mit Zitat |
|
---|---|---|
hmmm...
Ich würde mal sagen, für boot gehört auch ein Type erstellt. Es gibt hier nämlich kein Field wo schiff\x und schiff\y wäre. Toni >edit> ahh, jetzt gibt es sowas ... |
||
- Zuletzt bearbeitet von HOT-BIT am Mi, Mai 26, 2004 20:06, insgesamt 2-mal bearbeitet
![]() |
sbrog |
![]() Antworten mit Zitat ![]() |
---|---|---|
also an diesem code kann es nicht liegen, poste mal den ganzen code.
Und überprüfe, ob du schiff iurgendwo falsch geschrieben hast |
||
Tarnum |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
so is der anfang von meinem zukünftigen megaschooter, aber es geht jetzt nur um die types, also nich bemerken, dass irgendwas ausserhalb dieser fehlt ![]() Code: [AUSKLAPPEN] AppTitle "megashuuuter" Graphics 800,600,1,1 SetBuffer BackBuffer () selber = LoadAnimImage ("raumschiff.png",35 ,50 ,0,3) MaskImage selber , 255,255,255 shoot = LoadImage ("schuss.png") MaskImage shoot , 255,255,255 h_ground = LoadImage ("hintergrund.png") Type boot Field x Field y Field leben Field frame End Type schiff.boot = New boot Type schusstype Field x Field y Field art End Type Repeat TASTENABFRAGE MALEN Flip Cls Until KeyHit(1) ;_-_________________________________________________________________________________ ;----------------------------------------------------------------------------------- ;----------------------------------------------------------------------------------- ;----------------------------------------------------------------------------------- ;----------------------------------------------------------------------------------- ;FUNKTION TASTEN Function tastenabfrage () If KeyDown (205) And schiff\x < 600 Then schiff\x = schiff\x + 1 EndIf If KeyDown (205) And schiff\x > 0 Then schiff\x = schiff\x - 1 EndIf If KeyDown (200) And schiff\y < 300 Then schiff\y = schiff\y + 1 EndIf If KeyDown (208) And schiff\y > 50 Then schiff\y = schiff\y - 1 EndIf If KeyHit (57) Then schuss.schusstype = New schusstype schuss\x = schiff\x schuss\y = schiff\y schuss.schusstype = New schusstype schuss\x = schuss\x schuss\y = schiff\y EndIf End Function ;FUNKTION MALEN Function malen () TileBlock h_ground For schuss.schusstype = Each schusstype schuss\x = schuss\x + 4 If schuss\x < 650 Then DrawImage shoot, schuss\x , schuss\y Else Delete schuss.schusstype EndIf Next End Function |
||
Tarnum |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ah hab den fehler selber gefunden, war aber eigentlich zufall...
da muss ich so schreiben : Code: [AUSKLAPPEN] If KeyDown (205) And schiff.boot\x < 600 Then also das .boot noch dahinter packen, dann hat er das problem nich mehr ! Danke dir, aber ich werd bestimmt nochwas posten in nächster zeit |
||
HOT-BITGast |
![]() Antworten mit Zitat |
|
---|---|---|
Hi !
dein Problem war folgendes: wenn du schiff\x und schiff\y im Hauptprogramm aufgerufen hättest, wäre die Fehlermeldung nicht aufgetreten. Da dies aber in einer Function geschah, schon. Habe es probiert. es ging da nur, wenn: For schiff.boot=Each boot .... Next stand. Toni |
||
zocker2150 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Global schiff.boot = New boot | ||
![]() |
regaa |
![]() Antworten mit Zitat ![]() |
---|---|---|
zocker2150 hat Folgendes geschrieben: Global schiff.boot = New boot
Endlich jemand der das Problem sieht. Oder du könntest einfach die variable schiff der Funktion weitergeben. |
||
UltraMixer Professional 3 - Download
QB,HTML,CSS,JS,PHP,SQL,>>B2D,B3D,BP,BlitzMax,C,C++,Java,C#,VB6 , C#, VB.Net |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group