von mehreren types einen auswählen und behalten
Übersicht

![]() |
BaschdiBetreff: von mehreren types einen auswählen und behalten |
![]() Antworten mit Zitat ![]() |
---|---|---|
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 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
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 |
![]() Antworten mit Zitat ![]() |
---|---|---|
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 |
![]() Antworten mit Zitat ![]() |
---|---|---|
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 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group