World of Gothic Archiv > Editing
Arenakampf als Liga
Seite 1 von 1  1 
22.04.2003, 10:34 #1
Auron_X
Beiträge: 929
Arenakampf als Liga
Hallo,
wir wollten ne kleine Liga in der Arena machen, soll heißen jeden Tag kämpfen andere Leute gegeneinander... mit Punkten und so.
Die Routinen wollte ich dann über die B_RefreshArmor wechseln, aber wenn die "Saison" vorbei ist, soll sie wieder von vorne losgehen, nur da weiß ich absolut nicht wie ich das anstellen soll.
Es wäre wirklich sehr hilfreich, da wir dieses System auch noch für andere Dinge *hust* gebrauchen könnten.

Also falls jemand ne Lösung kennt, bitte geb sie uns!!!

THX
22.04.2003, 11:24 #2
KaiserARM
Beiträge: 88

Ist doch einfach? Du machst eine Variable, in der du speicherst, welcher Kämpfer gerade an der Reihe ist und definierst für jeden Kämpfer einen Wert auf dieser Variable.
Allerdings fällt mir da was Anderes ein: Hast du es schon geschafft, mit der B_RefreshArmor() irgendwas anzustellen? Ich hatte es mal kurz getestet und bei mir schien sie nicht aufgerufen zu werden... :(
22.04.2003, 11:29 #3
Auron_X
Beiträge: 929

Theoretisch soll sie immer um 00 Uhr aufgerufen werden.

Noch was, wie wird dann festgelegt wer der nächste ist?
22.04.2003, 11:41 #4
KaiserARM
Beiträge: 88

Ja theoretisch. Haste das schon praktisch feststellen können?

OK, etwas ausführlicher. Erst definierste die Variable. Dann legst du die Kämpfer fest, in der Reihenfolge, in der sie antreten sollen. Sieht dann etwa so aus:
code\:

var int ARENA_KAEMPFER = 0;

const int ARENA_MUD = 1;
const int ARENA_KIRGO = 2;
const int ARENA_THORUS = 3;
...
...

Wenn dein Code aufgerufen wird (wenn hoffentlich überhaupt), machst du eine IF/ELSE abfrage:
code\:

if (ARENA_KAEMPFER == ARENA_MUD)
{
... //Schicke Mud in die Arena
... //Schicke Vorgänger wieder an seinen normalen Tagesablauf
...
};

else if ...
...

Nach der Abfrage erhöst du einfach die Variable um eins oder, wenn sie schon ihren maximalen Wert hat, setzt sie wieder auf 0 (was dann der "neuen Saison" entspräche):

code\:

ARENA_KAEMPFER = ARENA_KAEMPFER + 1;

if (ARENA_KAEMPFER > ARENA_BOSSFIGHT)
{
ARENA_KAEMPFER = 0;
};


Alles klar?
22.04.2003, 12:21 #5
Auron_X
Beiträge: 929

Okay, so irgendwie kann man das wahrscheinlich lösen...

THX, dann erstmal
22.04.2003, 12:30 #6
KaiserARM
Beiträge: 88

Kein Problem. Und sag bitte bescheid, ob das mit der B_RefreshArmor() geklappt hat.
22.04.2003, 13:04 #7
Auron_X
Beiträge: 929

Nö, ich hab mir grad was ausgetüfftelt das auf die B_RefreshArmor verzichtet, habs aber noch net getestet...

Wenns funzt kann ich dir vielleicht mal des Script zukommen lassen...
Seite 1 von 1  1