#include <living/team.h>#include <wizlevels.h>
gehe zum Quellcode dieser Datei
Makrodefinitionen | |
| #define | ME this_object() |
| #define | PO previous_object() |
Funktionen | |
| void | create () |
| static mixed | DoRegisterTeam (object ob, string name) |
| varargs string | RegisterTeam (string name) |
| void | UnregisterTeam () |
| object * | ListTeamObjects () |
| string * | ListTeamNames () |
| string * | SortedListTeamNames () |
| void | ShowTeamInfos () |
| varargs int | remove (int silent) |
Variablen | |
| static mapping | team_names |
| static mapping | team_names_reverse |
| #define ME this_object() |
Definiert in Zeile 6 der Datei teammaster.c.
| #define PO previous_object() |
Definiert in Zeile 7 der Datei teammaster.c.
| void create | ( | ) |
Definiert in Zeile 12 der Datei teammaster.c.
Benutzt team_names und team_names_reverse.
00012 { 00013 00014 team_names=([]); // Objekt -> Name 00015 team_names_reverse=([]); // Name -> Objekt 00016 }
| static mixed DoRegisterTeam | ( | object | ob, | |
| string | name | |||
| ) | [static] |
Definiert in Zeile 18 der Datei teammaster.c.
Benutzt m_delete(), team_names und team_names_reverse.
Wird benutzt von RegisterTeam() und UnregisterTeam().
00018 { 00019 mixed old; 00020 00021 old=team_names[ob]; 00022 efun::m_delete(team_names_reverse,old); // Namen Freigeben 00023 if (!name) { // UnRegister 00024 efun::m_delete(team_names,ob); 00025 return name; 00026 } 00027 team_names[ob]=name; 00028 team_names_reverse[name]=ob; 00029 return name; 00030 }


| string* ListTeamNames | ( | ) |
Definiert in Zeile 61 der Datei teammaster.c.
Benutzt team_names_reverse.
Wird benutzt von SortedListTeamNames().
00061 { 00062 return(m_indices(team_names_reverse)-({0})); 00063 }

| object* ListTeamObjects | ( | ) |
Definiert in Zeile 57 der Datei teammaster.c.
Benutzt team_names.
00057 { 00058 return(m_indices(team_names)-({0})); 00059 }
| varargs string RegisterTeam | ( | string | name | ) |
Definiert in Zeile 32 der Datei teammaster.c.
Benutzt DoRegisterTeam(), i, min, PO, team_names_reverse und TEAM_OBJECT.
00032 { 00033 int i,min; 00034 00035 if (member(inherit_list(PO),TEAM_OBJECT+".c")<0) 00036 return 0; 00037 if (stringp(name)){ 00038 if (!team_names_reverse[name]) // Name noch nicht vergeben 00039 return DoRegisterTeam(PO,name); 00040 return 0; 00041 } 00042 min=sizeof(m_indices(team_names_reverse))+2; 00043 for (i=1;i<min;i++) 00044 if (!team_names_reverse[sprintf("%d",i)]) { 00045 min=i; 00046 break; 00047 } 00048 name=sprintf("%d",i); 00049 return DoRegisterTeam(PO,name); 00050 }

| varargs int remove | ( | int | silent | ) |
Definiert in Zeile 82 der Datei teammaster.c.
| void ShowTeamInfos | ( | ) |
Definiert in Zeile 69 der Datei teammaster.c.
00069 { 00070 object ob; 00071 string *ind; 00072 int i; 00073 00074 write(" --- Teamliste: ---\n"); 00075 ind=SortedListTeamNames(); 00076 for (i=sizeof(ind)-1;i>=0;i--) 00077 if (objectp(ob=team_names_reverse[ind[i]])) 00078 ob->ShowTeamInfo(); 00079 write(" --- (Ende Teamliste) ---\n"); 00080 }
| string* SortedListTeamNames | ( | ) |
Definiert in Zeile 65 der Datei teammaster.c.
Benutzt ListTeamNames().
00065 { 00066 return(sort_array(ListTeamNames(),#'<)); 00067 }

| void UnregisterTeam | ( | ) |
Definiert in Zeile 52 der Datei teammaster.c.
Benutzt DoRegisterTeam(), PO und TEAM_OBJECT.
00052 { 00053 if (member(inherit_list(PO),TEAM_OBJECT+".c")>=0) 00054 DoRegisterTeam(PO,0); 00055 }

mapping team_names [static] |
Definiert in Zeile 9 der Datei teammaster.c.
Wird benutzt von create(), DoRegisterTeam() und ListTeamObjects().
mapping team_names_reverse [static] |
Definiert in Zeile 10 der Datei teammaster.c.
Wird benutzt von create(), DoRegisterTeam(), ListTeamNames() und RegisterTeam().
1.6.3