Gegner im Spaceshooter?
Übersicht

FruscianteBetreff: Gegner im Spaceshooter? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Also bin immernoch an nem Spaceshooter. Die schüsse hab ich jetzt mit Types gemacht. Funktioniert auch aller wunderbar. Doch wie bekomm ich am besten Gegner ins Spiel auch wieder über Types? Bin gerade noch am herumtüfteln und irgendwie bekomm ich die Gegner nicht mit Types hin. Ist das die beste Lösung oder gibts da noch andere?
mfg Frusciante² |
||
![]() |
bruZard |
![]() Antworten mit Zitat ![]() |
---|---|---|
Types sind die beste Lösung. | ||
PIV 2,4GHz - 1GB DDR 333 - ATI Radeon9600 - WinXP - DX9.0c - BMax 1.14 - B3D 1.91 - 1280x1024x32
User posted image |
![]() |
Xalon |
![]() Antworten mit Zitat ![]() |
---|---|---|
BlitzBasic: [AUSKLAPPEN]
So sollte so ein Type aussehen ![]() Xalon |
||
>>Besucht doch mal meine Seite,mit NEUEN Tutorials<<
User posted image |
Finn |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
beispiel:
Code: [AUSKLAPPEN] AppTitle "Gegner" type gegner field x field y field image end type graphics 800, 600, 16, 2 Global gegneranzahl = 10 GEGNER_ERSTELLEN() Repeat cls UPDATE_GEGNER() flip forever ;functions function GEGNER_ERSTELLEN() For a = 0 to gegneranzahl g.gegner = new gegner g\x = Rnd(0, 200) g\y = Rnd(0, 300) g\image = loadimage("gegnerbild.bmp") next end function function UPDATE_GEGNER() For upd.gegner = each gegner drawimage upd\image, upd\x, upd\y ;hier können dann auch alle anderen gegnerangaben wie KI, bewegung ;etc. rein next end function müsste funktionieren. (natürlich nur wenn die grafik existiert) |
||
Frusciante |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wenn ich diese Funktion (auf den Bildschirm gemalt werden die Aliens in einer anderen Funktion) aufrufe, müssten doch eigentlich 11 neue Aliens auf den Bildschirm gezeichnet werden immer im Abstand von 20 Pixenl. Oder hab ich jetzt einen totalen Denkfehler. Es wird aber leider immer nur 1 auf den Bildschirm gezeichnet.
BlitzBasic: [AUSKLAPPEN]
Hier werden sie gezeichnet: BlitzBasic: [AUSKLAPPEN]
Und noch ne Frage: Die Schüsse laufen in dem Spiel ohne eingebaute Verzägerung durch millisecs oder ähnliches. Sie bewegen sich 3 Pixel pro Schleifendurchlauf und die geschwindigkeit ist auf meinem Rechner gut so. Kann es jetzt sein das sich die Schüsse auf einem schnelleren Computer auch schneller bewegen? mfg Frusciante² |
||
Finn |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
schreib nicht +20 sondern *20.
dann müsste es gehen. |
||
mulleimers |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Frusciante hat Folgendes geschrieben: Und noch ne Frage: Die Schüsse laufen in dem Spiel ohne eingebaute Verzägerung durch millisecs oder ähnliches. Sie bewegen sich 3 Pixel pro Schleifendurchlauf und die geschwindigkeit ist auf meinem Rechner gut so. Kann es jetzt sein das sich die Schüsse auf einem schnelleren Computer auch schneller bewegen? mfg Frusciante² Wenn du eine Framebremse eingebaut hast nein, sonst bewegen sie sich auf einem schnelleren PC auf jeden fall schneller, da die Hauptschleife schneller durchläuft |
||
Frusciante |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Funktioniert leider immer noch nicht.
mfg Frusciante² |
||
MegaTefyt |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das alien\ax ist immer der Wert des neu erstellen Types, sprich ist standardgemäß 0. Das heißt, dass du jedesmal
alien\ax = 0 + 20 rechnest, daher sind alle auf x-Position 20. Mach einfach alien\ax = n * 20 dann passt das. ^^ |
||
- Zuletzt bearbeitet von MegaTefyt am Di, Sep 13, 2005 16:49, insgesamt einmal bearbeitet
Finn |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
For n = 2 To 10 Step 1
alien.t_alien = New t_alien alien\ax = n * 20 ;hier muss die vari von oben benutzt werden Next |
||
Frusciante |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
vielen dank, jetz hats geklappt!
mfg Frusciante² |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group