C # Mir C#传奇源码增加一个怪物的方法(Legend source code to increase monsters)

1,在数库中设置外观即image

2,设置AI(行为方式)

3,在Shared中的Eunms.cs中的

  • public enum Monster : ushort
  • {
  • //添加
  •     Butcher = 450,
  •     Riklebites = 451,
  •     FeralTundraFurbolg = 452,
  •     FeralFlameFurbolg = 453,
  •     ArcaneTotem = 454,
  •     SpectralWraith = 455,
  •     BabyMagmaDragon = 456,
  •     BloodLord = 457,
  •     SerpentLord = 458,
  •     MirEmperor = 459,
  •     MutantManEatingPlant = 460,
  •     MutantWarg = 461,
  •     GrassElemental = 462,
  •     RockElemental = 463,
  •     变态射手 = 465,      //AI 8
  • 4,在Client.MirObiects.MonsterObject中
  •   case MirAction.AttackRange1:
  •                     if (CMain.Time >= NextMotion)
  • ……………….
  • else
  • ……
  • Case1
  • Case2
  • ….
  • Case4
  • 找合适的地方添加可以改变攻击方式
  •   case Monster.AxeSkeleton:
  •                                                 if (MapControl.GetObject(TargetID) != null)
  •                                                     CreateProjectile(224, Libraries.Monsters[(ushort)Monster.AxeSkeleton], false, 3, 30, 0);
  •                                                 break;
  •                                             case Monster.Dark:
  •                                                 if (MapControl.GetObject(TargetID) != null)
  •                                                     CreateProjectile(224, Libraries.Monsters[(ushort)Monster.Dark], false, 3, 30, 0);
  •                                                 break;
  •                                             case Monster.变态射手:
  •                                                 //创建一个名为”Monster.BoneArcher”的怪物攻击投射物,并播放了相应的音效。根据代码中的注释,
  •                                                 //攻击的范围似乎是30个像素,但具体距离还需要结合游戏引擎和实际场景进行确认。
  •                                                 //攻击范围?
  •                                                 if (MapControl.GetObject(TargetID) != null)
  •                                                 {
  •                                                     CreateProjectile(224, Libraries.Monsters[(ushort)Monster.ZumaArcher], false, 1, 5, 0);
  •                                                     SoundManager.PlaySound(BaseSound + 6);
  •                                                 }
  •                                                 break;