Eigener Timer für jeden Type

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

BigPingu

Betreff: Eigener Timer für jeden Type

BeitragSa, Feb 28, 2009 19:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Hiho,
ich komm einfach nicht mehr weiter. Ich habe einen Timer im den Type gebaut, damit jeder Type Eintrag einen eigenen hat. Das hat auch super gklappt nur anstatt die "attacke" nur einmal auszuführen wird das ganze zw. 5 und 7 mal gemacht. Als der Timer noch für alle Types der gleiche war funktioniert das ganze so wie es soll. Jetzt natürlich die Frage: Warum ist das so? Ist sicher nur wieder irgendein dummer kleiner Fehler Rolling Eyes

Hier wird der Timer gesetzt:
Code: [AUSKLAPPEN]

If t_id   = 1 Then   ; einheit ID (name)
   
   einheit\id   = 1
   
   einheit\power   = 1
   einheit\tmr   = MilliSecs()
   ...
   
ElseIf t_id   = 2 Then ....



und hier ausgeführt:
Code: [AUSKLAPPEN]
For einheit.Teinheit = Each Teinheit
   DrawImage einheit\gfx,  einheit\pos_x, einheit\pos_y,einheit\id
   For gegner.Tgegner = Each Tgegner
      If ImageRectCollide (gegner\gfx, gegner\pos_x, gegner\pos_y, gegner\id, (einheit\pos_x-einheit\range/2+8), (einheit\pos_y-einheit\range/2+8), einheit\range, einheit\range) = True Then
         
         
         
         If MilliSecs() >= einheit\tmr + einheit\rate Then
            einheit\tmr = MilliSecs()
            gegner\hp = gegner\hp - einheit\power
         EndIf
         
         
         
         If gegner\hp <= 0 Then Delete gegner.Tgegner
      EndIf
   Next
Next


Gruss,
BigPingu
Meine Projekte:
Blockhead : 80%
VideoGameTycoon : 40%

Xeres

Moderator

BeitragSa, Feb 28, 2009 19:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Sieht prinzipiell funktionstüchtig aus... Wird die rate wird auch korrekt festgelegt? Ist der Fehler unabhängig von Einheiten und Gegner zahlen? Stellst du sonst noch wo was mit Timer oder Feuerrate an? Stehen nicht zufällig mehrere Einheiten übereinander?
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

BigPingu

BeitragSa, Feb 28, 2009 20:02
Antworten mit Zitat
Benutzer-Profile anzeigen
Xeres hat Folgendes geschrieben:
Stehen nicht zufällig mehrere Einheiten übereinander?

Boha danke, da wäre ich nie drauf gekommen, hatte das setzen der Einheiten per MouseDown() gemacht anstatt mit MouseHit() wodurch natürlich mehrere dort Platziert wurden Laughing Hätte den Fehler dort nie vermutet.

Vielen Dank nochmal!

Gruss,
BigPingu
Meine Projekte:
Blockhead : 80%
VideoGameTycoon : 40%

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group