PresentRows() ============= FUNKTION -------- :: mixed *PresentRows(object env); DEFINIERT IN ------------ :: TEAM_OBJECT (s. ) ARGUMENTE --------- :: object env Das Environment des gewuenschten Objektes. BESCHREIBUNG ------------ :: Mit dieser Funktion bekommt man die aktuellen Teamreihen, die im Argument env anwesend sind, des Teams zurueckgegeben. Ist env kein Objekt, so wird environment(this_player()) als solches angenommen. RUECKGABEWERT ------------- :: Es wird ein mixed-Array zurueckgegeben, dabei sind die einzelnen Reihen selbst wiederum Arrays mit den Spielerobjekten. BEISPIEL -------- :: Ein NPC im Kampf laesst eine Feuerwalze auf ein Team los, welche aber nur Spieler in der ersten und zweiten Teamreihe Schaden zufuegen soll. void Attack( object enemy ) { ... object team = enemy->QueryProp(P_TEAM); if ( objectp(team) ) { mixed teamrows = team->PresentRows(enemy); // Inhalt von "teamrows" zu diesem Zeitpunkt: // ({ ({[/dwarf:hauweg]}),({}),({[/elf:spitzohr]}),({}),({}),({}) }) // In der Umgebung von Zwerg Hauweg steht also noch Elf Spitzohr, und zwar // in der dritten Teamreihe (der hat Glueck gehabt). // Wenn dem Team noch mehr Spieler angehoeren, befinden sie sich gerade // nicht in der Umgebung (sprich im selben Raum) wie Hauweg. foreach ( i : 2 ) { foreach ( object pl : teamrows[i] ) { tell_object(pl,"Der Feuerteufel laesst eine Feuerwalze auf Dich " "und Dein Team los.\n"); pl->Defend(200+random(200),({DT_FIRE}),([SP_SHOW_DAMAGE:1]),TO); } } } else { tell_object(enemy,"Der Feuerteufel laesst eine Feuerwalze auf Dich " "los.\n"); enemy->Defend(200+random(200),({DT_FIRE}),([SP_SHOW_DAMAGE:1]),TO); } ... } BEMERKUNG --------- :: Man beachte, dass das erste Argument (also Argument 0) die erste Teamreihe ist. SIEHE AUCH ---------- :: Uebersicht: teamkampf Properties: P_TEAM, P_ASSOC_MEMBERS, P_TEAM_ATTACK_CMD, P_TEAM_AUTOFOLLOW, P_TEAM_COLORS, P_TEAM_LEADER, P_TEAM_NEWMEMBER, P_TEAM_WANTED_ROW, P_TEAM_WIMPY_ROW Bewegung: IsTeamMove, TeamFlee Mitglieder: IsTeamLeader, TeamMembers Kampf: AssocMember, DeAssocMember, InsertEnemyTeam, SelectNearEnemy, SelectFarEnemy Positionen: PresentPosition, PresentEnemyRows, PresentTeamPosition, SwapRows Sonstiges: TeamPrefix, teamkampf_intern Last modified: 16-08-2010, Gabylon