Mouse Cursor

Übersicht BlitzBasic Beginners-Corner

Gehe zu Seite Zurück  1, 2, 3, 4  Weiter

Neue Antwort erstellen

 

As$as$iN

BeitragMo, März 21, 2005 16:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Lol?
Alter ich muss gleich off und ich wollte das noch schnell hinkriegen, da ein Reboot zu lange dauert.
Ich habe soviel ich weiss alle deine fehler korriegiert Bladerunner, falls ich mich irre sag mir was ich vergessen habe!
Ach nein, das brauchst du ja nicht, hast ja keine lust.
Mit freundlichen Grüßen

As$as$iN

BladeRunner

Moderator

BeitragMo, März 21, 2005 16:35
Antworten mit Zitat
Benutzer-Profile anzeigen
If MouseHit(1) Then...
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

As$as$iN

BeitragMo, März 21, 2005 16:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe gerebootet.
Klappts? Nein.....
Achso, sorry aber, was ist bei if mousehit(1) then .... falsch?
Egal ich sehs mir schnell an.
Mit freundlichen Grüßen

As$as$iN
 

As$as$iN

BeitragMo, März 21, 2005 16:50
Antworten mit Zitat
Benutzer-Profile anzeigen
BladeRunner hat Folgendes geschrieben:

Was naheliegt wäre also die Koordinaten jedes schusses zu speichern und diese zu verändern. <----mausx\mausy oder?
Zudem sollte es eine Variable geben die anzeigt ob ein Schuss vorhanden ist und somit verändert /dargestellt werden muss. <----erledigt.


So und mein neuer Code:
BlitzBasic: [AUSKLAPPEN]

;Hauptschleife
MoveMouse 322,402
Repeat
Cls
mausx = MouseX()
mausy = MouseY()
DrawImage Raumschiff,MouseX(),MouseY()
If MouseHit(1) Then
shootneed = 1
EndIf
If shootneed = 1 Then
DrawImage schuss,mausx,mausy
mausx = mausx + 3
EndIf
Flip
Until KeyDown(1)


Leider klappt es immernoch net.....
Mit freundlichen Grüßen

As$as$iN

BladeRunner

Moderator

BeitragMo, März 21, 2005 16:54
Antworten mit Zitat
Benutzer-Profile anzeigen
jo. zum einen wird shootneed immer 1 sein nach dem ersten klick (da es nirgends zurückgesetzt wird)
Zum anderen Differenzierst du immer noch nicht zwischen der Mausposition und der Position des Schusses.
Wenn er einmal eine Position erhalten hat, darf er von der Mausposition nicht mehr beeinflusst werden.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

As$as$iN

BeitragMo, März 21, 2005 16:58
Antworten mit Zitat
Benutzer-Profile anzeigen
BladeRunner hat Folgendes geschrieben:

Zum anderen Differenzierst du immer noch nicht zwischen der Mausposition und der Position des Schusses.
Wenn er einmal eine Position erhalten hat, darf er von der Mausposition nicht mehr beeinflusst werden.


Soll ich also Mausx = mousex() und mausy = mousey() aus der repeat schleife rausnehmen?
Mit freundlichen Grüßen

As$as$iN

BladeRunner

Moderator

BeitragMo, März 21, 2005 17:00
Antworten mit Zitat
Benutzer-Profile anzeigen
was würde dann passieren ?
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

As$as$iN

BeitragMo, März 21, 2005 17:02
Antworten mit Zitat
Benutzer-Profile anzeigen
Dann wäre mausx = 322 und mausy = 402.
Aber das geht ja net.
Mit freundlichen Grüßen

As$as$iN

BladeRunner

Moderator

BeitragMo, März 21, 2005 17:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Wo müsstest du also die Mausposition für den Schuss festhalten ?
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

As$as$iN

BeitragMo, März 21, 2005 17:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Eigentlich in der schleife, da es außerhalb der Schleife net geht.
Mit freundlichen Grüßen

As$as$iN

BladeRunner

Moderator

BeitragMo, März 21, 2005 17:09
Antworten mit Zitat
Benutzer-Profile anzeigen
und wo genau ? (vielleicht wenn der schuss "entsteht" ? Wink)
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

As$as$iN

BeitragMo, März 21, 2005 17:11
Antworten mit Zitat
Benutzer-Profile anzeigen
GUt, wenn der schuss entsteht,
wäre dieser Code dann richtig(bei mir klappts irrgendwie immernoch net!Muss eh noch das mit dem mehreremale ballern coden):
BlitzBasic: [AUSKLAPPEN]

;Hauptschleife
MoveMouse 322,402
Repeat
Cls


DrawImage Raumschiff,MouseX(),MouseY()
If MouseHit(1) Then
shootneed = 1
EndIf
If MouseHit(1) = 0 Then
shootneed = 0
EndIf
If shootneed = 1 Then
mausx = MouseX()
mausy = MouseY()
DrawImage schuss,schussx,schussy
mausx = mausx + 3
EndIf
Flip
Until KeyDown(1)
Mit freundlichen Grüßen

As$as$iN

BladeRunner

Moderator

BeitragMo, März 21, 2005 17:15
Antworten mit Zitat
Benutzer-Profile anzeigen
nein.
Mehrere Fehler:
niemals mehrfach mousehit in einer Schleife (der KlickBuffer wird beim Aufruf geleert).
Zweitens weisst du nicht beim entstehen sondern beim updaten des Schusses die Mausposition zu, also hat sich nichts geändert. Du solltest das Ganze nochmal neu durchdenken.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

-BB Noob-

BeitragMo, März 21, 2005 17:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Probier mal das:

BlitzBasic: [AUSKLAPPEN]
Dim Schusse(10,2)

If MouseHit(1) Then
Schussezahler = Schusselzahler + 1
If Schussezahler = 10 Then Schussezahler = 1
Schusse(Schussezahler,0) = 1 ; Ob der Schuss existiert
Schusse(Schussezahler,1) = MouseX()
Schusse(Schussezahler,2) = MouseY()
EndIf

For i = 1 To 10
If Schusse(i,0) = 1 Then
DrawImage Schussbild, Schusse(i,1),Schusse(i,2)
Schusse(i,2) = Schusse(i,2) - 1
EndIf


Ich hoffe da hat sich kein Fehler reingeschmuggelt

BladeRunner

Moderator

BeitragMo, März 21, 2005 17:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Tja Noob, aber wenn er nur Code zusammenpastet lernt er nichts.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

-BB Noob-

BeitragMo, März 21, 2005 17:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich glaub er will auch gar nichts lernen.

mfg noob
 

As$as$iN

BeitragMo, März 21, 2005 17:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Alter ich will lernen nur ich schnall es halt net.
Beim entstehen....wäre das net bei drawimage schuss,mausx,mausy?
Ich bin hier um zu lernen.
Nicht um euch zu nerven.
Wenn ich es net schnalle, sowas nennt man Neewb\Noob.
Mit freundlichen Grüßen

As$as$iN

BladeRunner

Moderator

BeitragMo, März 21, 2005 17:22
Antworten mit Zitat
Benutzer-Profile anzeigen
In diesem Fall wird er auch ohne deinen Code auskommen. Denn ohne zu lernen wird es nix mit einem Game.

Seid nicht so leichtfertig im Hergeben von Code. Fertiger code schadet meist mehr als dass er nutzt.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

As$as$iN

BeitragMo, März 21, 2005 17:23
Antworten mit Zitat
Benutzer-Profile anzeigen
-BB Noob- hat Folgendes geschrieben:
Probier mal das:

BlitzBasic: [AUSKLAPPEN]
Dim Schusse(10,2)

If MouseHit(1) Then
Schussezahler = Schusselzahler + 1
If Schussezahler = 10 Then Schussezahler = 1
Schusse(Schussezahler,0) = 1 ; Ob der Schuss existiert
Schusse(Schussezahler,1) = MouseX()
Schusse(Schussezahler,2) = MouseY()
EndIf

For i = 1 To 10
If Schusse(i,0) = 1 Then
DrawImage Schussbild, Schusse(i,1),Schusse(i,2)
Schusse(i,2) = Schusse(i,2) - 1
EndIf


Ich hoffe da hat sich kein Fehler reingeschmuggelt

Ich versteh den code net.
Das mit dem :
Schusse(Schussezahler,0) = 1 ; Ob der Schuss existiert
Schusse(Schussezahler,1) = Mousex()
Schusse(Schussezahler,2) = Mousey()
Kannst du mir das bitte nochmal erklären?
Mit freundlichen Grüßen

As$as$iN

BladeRunner

Moderator

BeitragMo, März 21, 2005 17:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Um zu deinem Problem zurückzukommen. Wann entsteht der schuss? Wenn Du auf die Maustaste Klickst. und Dann, exakt dann muss er auch seine StartPosition erhalten.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Gehe zu Seite Zurück  1, 2, 3, 4  Weiter

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group