"Mausshooter" - Ziel ständig an anderen Ort telepo

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Nichts95

Betreff: "Mausshooter" - Ziel ständig an anderen Ort telepo

BeitragFr, Mai 18, 2007 18:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo, ich wollte heute mir eine Art "Moorhuhn" versuchen zu programmieren. Dabei habe ich anstatt Moorhühner einfach nur einen Smiley genommen, doch der Smiley teleportiert sich immer wo anders hin - so, als ob die ganze Zeit die Zufallszahlen für die Koordinaten sich neu "erstellen"^^(Was ich vermute die Fehlerquelle ist - aber ich finde ihn nicht^^) Eigentlich wollte ich das er vorerst nur stehenbleibt damit ich dann verschiedene Möglichkeiten programmieren kann, dass der Smiley "programmiert" wegrennt.
Code: [AUSKLAPPEN]

Graphics 640,480,16,1
SetBuffer BackBuffer()
cursor = LoadImage("grafiken\cursor.bmp")
SeedRnd MilliSecs()

Global neusmiley
Global abgeschossen = 0
Global nochlebende = 0
Global verfehlte
Global smiley25x25_blau = LoadImage ("grafiken\25x25smiley_blau.bmp")
Global welchersmiley
ClsColor 255, 255, 255
MaskImage cursor, 255, 0, 255
Repeat
Cls
gegner()
mx = MouseX()
my = MouseY()
DrawImage cursor, mx,my
Maus=GetMouse()
Flip

Until KeyHit (1)

Function gegner()
If nochlebende < 4 Then
welchersmiley = Rand(0,2)
nochlebende = + 1
If welchersmiley = 1 Then
ys1 = Rand(600)
xs1 = Rand(400)
DrawImage smiley25x25_blau, ys1,xs1
EndIf
EndIf
End Function

WaitKey

Tankbuster

BeitragFr, Mai 18, 2007 18:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
ys1 = Rand(600)
xs1 = Rand(400)
DrawImage smiley25x25_blau, ys1,xs1

Du machst das doch auch^^
Der Smiley wird immer zufällig Positioniert -.-
Twitter
Download Jewel Snake!
Windows|Android
 

Nichts95

BeitragFr, Mai 18, 2007 19:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja, nur ich möchte das er an einer zufälligen Stelle dauerhaft bleibt.

Tankbuster

BeitragFr, Mai 18, 2007 19:08
Antworten mit Zitat
Benutzer-Profile anzeigen
ich hoffe mal, du weißt was ich damit sagen will -.-
Zitat:
schleife

if Smilyabgeschossen = true Then
ERSTELLE_ein_neues_smily();^^
endif
DrawImage smiley25x25_blau, ys1,xs1
schleifeende

function ERSTELLE_ein_neues_smily()
ys1 = Rand(600)
xs1 = Rand(400)
Smilyabgeschossen = false
end function
Twitter
Download Jewel Snake!
Windows|Android
 

Nichts95

BeitragFr, Mai 18, 2007 19:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke, klappt jetzt mit dem Smiley, bloß will er nicht zufällig irgendwo hin sondern immer oben links. So, als ob er die Variablen nicht lesen kann. Aber die Funktion wird doch vorher aufgerufen - also müssten die Variablen "angenommen" sein, oder? Hier nochmal den "bedeutenen" Codeabschnitt:
Code: [AUSKLAPPEN]

Graphics 640,480,16,1
SetBuffer BackBuffer()
cursor = LoadImage("grafiken\cursor.bmp")
SeedRnd MilliSecs()

Global neusmiley
Global abgeschossen = 0
Global nochlebende = 0
Global verfehlte
Global smiley25x25_blau = LoadImage ("grafiken\25x25smiley_blau.bmp")
Global welchersmiley
ClsColor 255, 255, 255
MaskImage cursor, 255, 0, 255
Repeat
Cls
gegner()
mx = MouseX()
my = MouseY()
DrawImage cursor, mx,my
Maus=GetMouse()
Flip

Until KeyHit (1)

Function gegner()
If nochlebende < 4 Then
welchersmiley = Rand(0,2)

If welchersmiley = 1 Then
erstellen_gegner25x25_blau()
EndIf
DrawImage smiley25x25_blau,ys1,xs1
EndIf
End Function


Function erstellen_gegner25x25_blau()
nochlebende = +1
ys1 = Rand(600)
xs1 = Rand(400)

End Function
WaitKey

Tankbuster

BeitragFr, Mai 18, 2007 19:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Mach mal ys1 und xs1 Global, und guck obs dann geht! Wink
Twitter
Download Jewel Snake!
Windows|Android

ToeB

BeitragFr, Mai 18, 2007 20:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich würde das ganze außerdem mit Types machen, weil wenn du für 100 Smiley Varialen machst, sähe das dan so aus :
Code: [AUSKLAPPEN]
Global x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,...,x100
Globa y1,y2,y3,y4,y5,y6,y7,y8,y9,y10,...,y100
 


Laughing
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!
 

Nichts95

BeitragSa, Mai 19, 2007 8:52
Antworten mit Zitat
Benutzer-Profile anzeigen
@Tankbuster: Geht nicht. Ich bekomme eine Fehlermeldung mit "Global can only appear in main program". Wenn ich die Variablen vorher schon im "main program" "ankündige", habe ich wieder das Problem das der Smiley sich wieder die ganze Zeit teleportiert^^

@Crack93: Ja, aber das wird nicht soooo viel, immerhin kann ich die Variablen von den "verschwundenen" wieder benutzen...

pixelshooter

BeitragSa, Mai 19, 2007 9:09
Antworten mit Zitat
Benutzer-Profile anzeigen
aber stell dir mal vor, du wolltest auf einmal statt 10 smilies 20 smilies haben weil dir das zu langweilig ist. So kann der benutzer das nicht einstellen. Wenn du types net magst, nimm n array. Wink
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group