drawimage unter einem type ???
Übersicht

![]() |
[Ko5MoS]Betreff: drawimage unter einem type ??? |
![]() Antworten mit Zitat ![]() |
---|---|---|
hallo alle zusammen!!
kann ich ein image als type darstellen??? bei mir klappt das irgendwie nicht.... Code: [AUSKLAPPEN] Function gegner_1() timer1=timer1+1 If timer1 >= 200 Then timer1=0 DrawImage info\grafik1,info\geg1_x,info\geg1_y ; hier wird immer gesagt variable must be a type Flip End If End Function der type sieht ungefähr so aus :: Code: [AUSKLAPPEN] Type gegner1 Field geg1_x Field geg1_y Field geg1_speed Field grafik1 End Type wer kann mir bitte sagen wie das geht ...was hab ich falsch gemacht |
||
Ich tippe schneller als ich denken kann und wenn ich auf ENTER drücke ist alles wieder weg ... |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
1. Benutz die Suche. Das Problem gabs erst vor 3 Tagen
2. info existiert auch nicht in der Funktion, da du es nicht übergeben hast, also kannst du nicht darauf zugreifen, dass führt dann dazu dass er dir sagt das es keine Type Entity sei. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Global anschauen. Vielleicht merkst dus dann. | ||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
das ist hoffentlich nicht den Ernst?!
Der korrekt weg ist den Type an die Funktion zu übergeben, sicher NICHT einfach jeden mist global zu machen. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
shit stimmt sorry xD | ||
![]() |
[Ko5MoS] |
![]() Antworten mit Zitat ![]() |
---|---|---|
ja wie übergeb ich einen type an eine function??
ich arbeite mich ja gerade durch die online hilfe! habe auch den andern beitrag schon gelesen... hilft bei mir aber nich viel hab ich das gefühl ![]() vielleicht jemand mit erinem konkreten beispiel wie ich ein bild und ein tpye zusammen unter einen hut kriege, wiegesagt es kommt immer die fehlermeldung" variable must be a type " wenn ich die lösung für mein problem gefunden habe werd ich es posten, ansonsten bin ich über jede hilfe dankbar |
||
Ich tippe schneller als ich denken kann und wenn ich auf ENTER drücke ist alles wieder weg ... |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Indem du den Handle zum Bild in einem Int Field im Type speicherst und danach dieses Field nutzt beim Zeichenbefehl.
Das ist kein Problem, aber du musst zwangsweise auch einen gültigen Type haben und den hat die Funktion oben nicht. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
[Ko5MoS] |
![]() Antworten mit Zitat ![]() |
---|---|---|
yo hab das jetzt so halbwegs hingekriegt.. danke erstmal !!
NUR NOCH EINE FRAGE: die bilder laufen erst sauber und fangen dan später immer mehr an zu ruckeln!! was ist da los wie kann ich das sauber hin kriegen ???? ich poste erstmal mein type test programm^^ hier is es falls jemand was dazu sagen will bitte sehr ... Code: [AUSKLAPPEN] Graphics 640,480,16,2 Global py,px gegner_jpg=LoadImage("bild.jpg") SeedRnd MilliSecs() Type gegner_1 Field x Field y Field grafik Field speed End Type Type player Field xx Field yy Field hp Field grafik_player End Type Repeat SetBuffer BackBuffer() For t = 1 To 3 gegner.gegner_1=New gegner_1 gegner\x=640 gegner\y=Rand(1,480) gegner\speed=Rand(4,10) gegner\grafik=gegner_jpg Next For t=1 To 1 player.player=New player player\xx=40+px player\yy=230+py player\grafik_player=gegner_jpg Next bewegung() For player.player=Each player Cls DrawImage player\grafik_player,player\xx,player\yy Next gegner.gegner_1=First gegner_1 gegner\x=gegner\x-gegner\speed DrawImage gegner\grafik,gegner\x,gegner\y If gegner\x <= -40 Then Delete gegner.gegner_1 EndIf gegner=After gegner gegner\x=gegner\x-gegner\speed DrawImage gegner\grafik,gegner\x,gegner\y If gegner\x <= -40 Then Delete gegner.gegner_1 EndIf gegner=After gegner gegner\x=gegner\x-gegner\speed DrawImage gegner\grafik,gegner\x,gegner\y If gegner\x <= -40 Then Delete gegner.gegner_1 EndIf Flip Until KeyHit(1) WaitKey End Function bewegung() If KeyHit(200) Then py=-10+py ElseIf KeyHit(208) Then py=10+py ElseIf KeyHit(203) Then px=-10+px ElseIf KeyHit(205) Then px=10+px EndIf End Function |
||
Ich tippe schneller als ich denken kann und wenn ich auf ENTER drücke ist alles wieder weg ... |
Lador |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi, schon mal aufgefallen, dass du den Spieler jeden Schleifendurchlauf neu erzeugst?...
MFG Lador |
||
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Und den/die Gegner auch.
Dazu würde ich bei Bewegung() keydown() benutzen, sonst darf man auf der taste rumhacken. :/ |
||
![]() |
[Ko5MoS] |
![]() Antworten mit Zitat ![]() |
---|---|---|
ja der tip mit keydown war schon mal sehr hilfreich, danke!!!
aber wie mach ich das sie nicht immer neu erzeugt werden, wenn ich zb: Code: [AUSKLAPPEN] For t = 1 To 3 gegner.gegner_1=New gegner_1 gegner\x=640 gegner\y=Rand(1,480) gegner\speed=Rand(4,10) gegner\grafik=gegner_jpg Next For t=1 To 1 player.player=New player player\xx=40+px player\yy=230+py player\grafik_player=gegner_jpg Next vor reapeat kopiere, kommt die fehlermeldung nach einem durchlauf image does not exist welchen befehl soll ich verwenden ??each statt new?? |
||
Ich tippe schneller als ich denken kann und wenn ich auf ENTER drücke ist alles wieder weg ... |
Lador |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Englisch: "Image does not exist" heißt doch auf Deutsch "Bild existiert nicht". Also hast du wahrscheinlich vergessen, dein Bild "gegner_jpg" zu laden, oder ihm einen anderen Namen gegeben (was so ziemlich aufs selbe rauskommt, da die Bildkennung "gegner_jpg" nicht existiert). Oder aber du hast das Bild "bild.jpg" nicht auf deinem PC/in dem Ordner, wo der Quellcode liegt.
Und, Nici, das mit den Gegner stimmt nicht: er löscht sie wieder. Und wenn er die Zeile vor die Schleife macht, kommt wahrscheinlich nach 3 Gegnern ein "Object does not exist" (selbst geprüft, aber hatte keine Probleme mit dem Bild), weil die Gegner gelöscht werden, aber nicht neu erstellt. Ich hab das ganze jetzt mal verbessert, du brauchst auch keine For i = 1 To 1 Schleife. Also bei dem Player brauchst du keine. Code: [AUSKLAPPEN] Graphics 640,480,16,2
Global py,px gegner_jpg=LoadImage("bild.jpg") SeedRnd MilliSecs() Type gegner_1 Field x Field y Field grafik Field speed End Type Type player Field xx Field yy Field hp Field grafik_player End Type player.player=New player player\xx=40+px player\yy=230+py player\grafik_player=gegner_jpg For t = 1 To 3 gegner.gegner_1=New gegner_1 gegner\x=640 gegner\y=Rand(1,480) gegner\speed=Rand(4,10) gegner\grafik=gegner_jpg Next Repeat SetBuffer BackBuffer() bewegung() Cls DrawImage player\grafik_player,player\xx,player\yy gegner.gegner_1=First gegner_1 gegner\x=gegner\x-gegner\speed DrawImage gegner\grafik,gegner\x,gegner\y If gegner\x <= -40 Then Delete gegner.gegner_1 EndIf gegner=After gegner gegner\x=gegner\x-gegner\speed DrawImage gegner\grafik,gegner\x,gegner\y If gegner\x <= -40 Then Delete gegner.gegner_1 EndIf gegner=After gegner gegner\x=gegner\x-gegner\speed DrawImage gegner\grafik,gegner\x,gegner\y If gegner\x <= -40 Then Delete gegner.gegner_1 EndIf Flip Until KeyHit(1) WaitKey End Function bewegung() If KeyHit(200) Then py=-10+py ElseIf KeyHit(208) Then py=10+py ElseIf KeyHit(203) Then px=-10+px ElseIf KeyHit(205) Then px=10+px EndIf End Function MFG Lador |
||
![]() |
[Ko5MoS] |
![]() Antworten mit Zitat ![]() |
---|---|---|
ops hab ich image geschrieben ![]() me big noob *schäm* "object does not exist" ist schon richtig. aufjedenfall danke ich guck mir das erstmal mal an. |
||
Ich tippe schneller als ich denken kann und wenn ich auf ENTER drücke ist alles wieder weg ... |
![]() |
[Ko5MoS] |
![]() Antworten mit Zitat ![]() |
---|---|---|
sooooooooooo ich habs endlich geschafft ![]() ich hab die for next schleifen wieder in repeat reingenommen. und jetzt läufts auch bei mir ruckel frei!! DANKE !!!! nach dem ich die unnötigen 1 to 1 und for player = new player schleife entfernt habe BIG THX, Hier mal der fertige code: Code: [AUSKLAPPEN] Graphics 640,480,16,2 Global py,px,gegner.gegner_1,player.player gegner_jpg=LoadImage("bild.jpg") SeedRnd MilliSecs() Type gegner_1 Field x Field y Field grafik Field speed End Type Type player Field xx Field yy Field hp Field grafik_player End Type Repeat SetBuffer BackBuffer() bewegung() player.player=New player player\xx=40+px player\yy=230+py player\grafik_player=gegner_jpg For t = 1 To 3 gegner.gegner_1=New gegner_1 gegner\x=640 gegner\y=Rand(1,480) gegner\speed=Rand(4,10) gegner\grafik=gegner_jpg Next Cls DrawImage player\grafik_player,player\xx,player\yy gegner.gegner_1=First gegner_1 gegner\x=gegner\x-gegner\speed DrawImage gegner\grafik,gegner\x,gegner\y If gegner\x < -40 Then Delete gegner.gegner_1 gegner=After gegner gegner\x=gegner\x-gegner\speed DrawImage gegner\grafik,gegner\x,gegner\y If gegner\x < -40 Then Delete gegner.gegner_1 gegner=After gegner gegner\x=gegner\x-gegner\speed DrawImage gegner\grafik,gegner\x,gegner\y If gegner\x < -40 Then Delete gegner.gegner_1 Flip Until KeyHit(1) WaitKey End Function bewegung() If KeyDown(200) Then py=-10+py ElseIf KeyDown(208) Then py=10+py ElseIf KeyDown(203) Then px=-10+px ElseIf KeyDown(205) Then px=10+px EndIf End Function |
||
Ich tippe schneller als ich denken kann und wenn ich auf ENTER drücke ist alles wieder weg ... |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group