von mehreren types einen auswählen und behalten

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

Baschdi

Betreff: von mehreren types einen auswählen und behalten

BeitragSo, Sep 16, 2007 18:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Also wenn nun eine einheit von team 1 von 2 einheiten team 2 angegriffen wird dann zieht der einzelne team 1er beiden team 2er gleichzeitig etwas ab weil beide in reichweite sind ..ich muss also definieren das er nur einen der beiden (oder gegf. auch mehreren) angreift bis der tod ist und dann zum nöchsten übergeht..am besten nach den leben nach ..also wer am wenigsten leben hat der wird als erster angegriffen ..aber wie mache ich das in BB ich habs mit meiner weiteren VAR probiert das hat aber hinten und vorne nicht geklappt..also hab ichg mir gedacht evtl is wer von euch dem prob auch mal begegnet....

dank im vorraus mfg basti

hier ist der entscheidene code:

Code: [AUSKLAPPEN]


;Leben abziehen   
For a.alien = Each alien
For o.alien = Each alien
         
   If a\team <> o\team And o\abziehen=0 Then:
      If o\xx <= a\xx + a\reich * tile And o\xx >= a\xx - a\reich * tile Then:
              If o\yy <= a\yy + a\reich * tile And o\yy >= a\yy - a\reich * tile Then  o\abziehen=1
      EndIf
   EndIf
            
Next
Next   
         
If al\abziehen=1 Then al\buf=al\buf+1
If al\abziehen=1 And al\buf>al\dau Then al\buf=0 : al\liv = al\liv - al\att : al\abziehen=0            
                        
The_Baschdi@
Wer in Ogame is soll sofort zum Orden wechseln (D.O.) --- Alle Macht dem Orden
 

Matthias

BeitragSo, Sep 16, 2007 18:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Hay versuchs mal so irgendwie
Konnte ich leider nicht testen.

Code: [AUSKLAPPEN]

For a.alien = Each alien
MinLeben=100000
;--------Bereich ermitteln
For o.alien = Each alien
         
      If o\xx <= a\xx + a\reich * tile And o\xx >= a\xx - a\reich * tile Then:
              If o\yy <= a\yy + a\reich * tile And o\yy >= a\yy - a\reich * tile Then  o\abziehen=1
      EndIf
   EndIf
Next
;----Den mit den wenigsten Leben und Makiert Ermitteln
For o.alien = Each alien
if o\Leben<MinLeben and o\abziehen=1 then
   o\abziehen=0:AllienID=AIDZaler:MinLeben=o\Leben
end if
AIDZaler=AIDZaler+1:next:AIDZaler

;------Leben abziehen
For o.alien = Each alien
if AIDZaler=AllienID then o\Leben=o\Leben-1
AIDZaler=AIDZaler+1
next


Next   

Mfg Matthias

Baschdi

BeitragSo, Sep 16, 2007 19:25
Antworten mit Zitat
Benutzer-Profile anzeigen
wow danke ich probiers gleich mal aus
The_Baschdi@
Wer in Ogame is soll sofort zum Orden wechseln (D.O.) --- Alle Macht dem Orden

Baschdi

BeitragSa, Sep 22, 2007 13:31
Antworten mit Zitat
Benutzer-Profile anzeigen
sry is das nun douple post??? kA ich hoffe nicht denn ich mus das tun damit auch wieder jmd in diesen thread reinguckt ...


also ich hab das obrige beispiel getestet aber es hat net gefuntzt, net richtig ..auch als ichs verändert habe drum habe ich nomal was eigenes ausprobiert und es hat geklappt aber nun habich ein anderes problem ein ähnliches:


also ich habe den angegriffenen eine eigene koo gegeben und die wird gespeichert und beim angreifen aufgerufen nun istr mein prob das wenn jmd einen angreift das dann abziehen=1 ist und leben abgezogen werden wenn aber 5 leute gleichzeitig angreifen ist abziehen auch 1 und es wird nur einmal abgezogen anstatt 5 mal das ist dann unfair...ich habs mal probiert o0hne diese abziehen var aber dann ist die angriffsstärke von der anzahl der einheiten auf dem feld abhängig und da geht gar nicht

naja hier is der code AZx und AZy ist die koo vom angegriffenen den ich davor ermittelt habe ....


Code: [AUSKLAPPEN]


;Leben abziehen   
For o.alien = Each alien
For a.alien = Each alien
         
   If a\team <> o\team And o\abziehen=0 And o\xx=AZx And o\yy=AZy Then:
               
      o\abziehen=1

   EndIf
            
Next
Next   
         
If al\abziehen=1 Then al\buf=al\buf+1
If al\abziehen=1 And al\buf>al\dau Then al\buf=0 : al\liv = al\liv - (al\att*al\abziehen) : al\abziehen=0                               
         
The_Baschdi@
Wer in Ogame is soll sofort zum Orden wechseln (D.O.) --- Alle Macht dem Orden

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group