anchor.diff:  interface
   
   uses uGame, uMap, uEntity;
  +
  +type
  +  TAbility = (abPoison);
   
   type
     TNPCType = (ntSell_C, ntHealer_A, ntBlacksmith_A, ntWpnTrader_B,
  
positive.code:     Damage: TDamage;
      Color: Cardinal;
      NPCType: set of TNPCType;
    end;
  
  type
  
negative.code:   The := GetCapit(GetDescThe(Mobs.GetName(TMobEnum(ID))));
    if (Player.DV < Math.RandomRange(0, 100)) then
    begin
      // Poison (25%)
      if (abPoison in MobBase[TMobEnum(ID)].Abilities) and (Math.RandomRange(0, 8) <= 1) then
      begin
        L := MobBase[TMobEnum(ID)].Level;
        Dam := Math.EnsureRange(Math.RandomRange(L * 15, L * 25), 0, High(Byte));
        Player.Poison := Player.Poison + Dam;
        MsgLog.Add(Format(_('%s is poisoning you (%d).'), [The, Dam]));
        Exit;
  