Esempio n. 1
0
 public Monster Clone()
 {
     Monster monster = new Monster();
     monster.CurrentHP = CurrentHP;
     monster.Name = Name;
     monster.CharType = CharType;
     monster.Experience = Experience;
     monster.CurrentHP = CurrentHP;
     monster.MaxHP = MaxHP;
     monster.Corpse = Corpse;
     monster.Attack = Attack;
     monster.Skill = Skill;
     monster.Armor = Armor;
     monster.Defense = Defense;
     monster.Talk = Talk; //Shallow copy
     monster.Spells = Spells; //Shallow copy
     monster.Loot = Loot;
     monster.LootContainer = LootContainer;
     monster.Speed = Speed;
     monster.Immunities = Immunities;
     monster.SummonCost = SummonCost;
     monster.Corpse = Corpse;
     monster.MaxSummons = MaxSummons;
     return monster;
 }
Esempio n. 2
0
 //TODO: Delete all these blah methods
 public Object blahblah(Object arg)
 {
     Monster m = new Monster();
     return m;
 }
Esempio n. 3
0
 public void RemoveSummon(Monster monster)
 {
     summons.Remove(monster);
 }
Esempio n. 4
0
 public void AddSummon(Monster monster)
 {
     summons.Add(monster);
 }
Esempio n. 5
0
 public void SendAddMonster(Monster monster, Position position)
 {
     lock (lockThis) {
         SendAddCreature(monster, position);
     }
 }
Esempio n. 6
0
 public virtual void AppendRemoveMonster(Monster monster)
 {
     lock (lockThis) {
         AppendRemoveCreature(monster);
     }
 }
Esempio n. 7
0
 public void AppendAddMonster(Monster monster, Position position)
 {
     lock (lockThis) {
         AppendAddCreature(monster, position);
         AddMagicEffect(MagicEffect.BLUEBALL, monster.CurrentPosition);
         monster.PerformThink();
     }
 }