Moin,
ich bin gerade am überlegen, wie ich mein Fraktions-System
am besten gestalten kann. Vorab;
Der Spieler sollte die Möglichkeit haben, in allen Fraktionen gleichzeitig zu sein,
dafür würde eine einzelne Variable (z.B PlayerInfo[playerid][pFraktion]) wohl nicht ausreichen.
Ich habe mir bisher 2 vorgestellt.
Auf dem Server gibt es 5 Fraktionen.
1.)
Ich verwende in meinem Spieler Enum, einen Array Namens pFraktion,
dieser hat die Größe 6, damit ich die 0 im Array nicht verwenden muss.
Das SAPD ist auf dem Server die Fraktions-ID 1.
Ich würde nun also wenn ich den Spieler dieser Fraktion hinzufügen möchte,
folgendes tun: PlayerInfo[playerid][pFraktion][1] = 1; // true,
oder, wenn ich diesen entfernen möchte:
PlayerInfo[playerid][pFraktion][1] = 0;//false
Die andere Option wäre:
2)
Ich weise meinem Array, unabhängig von der Reihenfolge einfach Fraktions IDs zu,
Beispiel: PlayerInfo[playerid][pFraktion][0] = 3; // "slot" 0 des Spieler Fraktions-Arrays ist nun
die Fraktion 3 zugewiesen. Damit es nicht zu Überschreibungen kommt, würde ich jedesmal
abfragen, ob die Fraktions-ID schon irgendeiner dieser "Slots" zugewiesen wurde.
Ich hoffe mal, ihr konntet es einigermaßen verstehen.
Was denkt ihr ? Was wäre besser?
LG