
walk_mapping
************


BEISPIELE
=========

   In einem Mapping (Keys: Spielerobjekte) soll auf alle Werte etwas
   drauf addiert werden:

      // Liste mit Spielern durchgehen ...
      mapping x=([ [/human:liafar]:  20,
                   [/dwarf:mesirii]: 50,
                   [/elf:zarniya]:   40,
                   [/feline:turbo]:  30]);

      // ... und Werte aendern:
      void add_val(object key, int val, int add) {
        if(key->InFight())
          val+=add;
        else
          val-=add;
      }

      // verschiedene Aufrufarten, identisches Resultat:
      walk_mapping(x, "add_val", 0, 10);
      walk_mapping(x, "add_val", this_object(), 10
      walk_mapping(x, "add_val", "/players/jof/addierobjektmitmethode", 10);

      walk_mapping(x, #'add_val, 10);
