sm
服务器租用 996 无法下载点击此处反馈
/
查看: 1712|回复: 0

C#传奇3大补帖增强免蜡源代码 [传奇3源码]

[复制链接]

826

主题

37

回帖

23万

积分

霸王教主

积分
237197
发表于 2022-4-19 21:21:50 | 显示全部楼层 |阅读模式
C#传奇3大补帖增强免蜡源代码
  1. private void DefaultDrawObjects()
  2.         {

  3.             int num1 = Math.Max(0, User.CurrentLocation.X - OffSetX - 4);
  4.             int num2 = Math.Min(Width - 1, User.CurrentLocation.X + OffSetX + 4);
  5.             int num3 = Math.Max(0, User.CurrentLocation.Y - OffSetY - 4);
  6.             int num4 = Math.Min(Height - 1, User.CurrentLocation.Y + OffSetY + 25);
  7.             for (int i = num3; i <= num4; i++)
  8.             {
  9.                 int num5 = (i - User.CurrentLocation.Y + OffSetY + 1) * 32 - User.MovingOffSet.Y;
  10.                 for (int j = num1; j <= num2; j++)
  11.                 {
  12.                     int num6 = (j - MapControl.User.CurrentLocation.X + MapControl.OffSetX) * 48 - MapControl.User.MovingOffSet.X;
  13.                     Cell cell = this.Cells[j, i];
  14.                     MirLibrary value2;
  15.                     LibraryFile value;

  16.                     if (Libraries.KROrder.TryGetValue(cell.MiddleFile, out value) && value != LibraryFile.Tilesc && CEnvir.LibraryList.TryGetValue(value, out value2))
  17.                     {
  18.                         int num10 = cell.MiddleImage - 1;
  19.                         bool flag3 = false;
  20.                         if (cell.MiddleAnimationFrame > 1 && cell.MiddleAnimationFrame < 255)
  21.                         {
  22.                             num10 += Animation % (cell.MiddleAnimationFrame & 0xF);
  23.                             flag3 = (cell.MiddleAnimationFrame & 0x20) > 0;
  24.                         }
  25.                         Size size3 = value2.GetSize(num10);
  26.                         if (size3.Width != 48 || size3.Height != 32 || (size3.Width == 96 && size3.Height == 64))
  27.                         {
  28.                             if (!flag3)
  29.                             {
  30.                                 value2.Draw(num10, num6, num5 - size3.Height, new Color4(0.85f, 0.85f, 0.85f).ToColor(), false, 1f, ImageType.Image);//地图
  31.                             }
  32.                             else
  33.                             {
  34.                                 value2.DrawBlend(num10, num6, num5 - size3.Height, new Color4(1F, 1f, 1f).ToColor(), false, 0.618f, ImageType.Image, 0);
  35.                             }
  36.                         }
  37.                     }
  38.                     if (!Libraries.KROrder.TryGetValue(cell.FrontFile, out value) || value == LibraryFile.Tilesc || !CEnvir.LibraryList.TryGetValue(value, out value2))
  39.                     {
  40.                         continue;
  41.                     }

  42.                     int num8 = (cell.FrontImage & 0x7FFF) - 1;
  43.                     int num11 = cell.FrontImage - 1;
  44.                     bool flag4 = false;
  45.                     if (cell.FrontAnimationFrame > 1 && cell.FrontAnimationFrame < 255)
  46.                     {
  47.                         num11 += Animation % (cell.FrontAnimationFrame & 0x7F);
  48.                         flag4 = (cell.FrontAnimationFrame & 0x80) > 0;
  49.                         int frontAnimationTick = cell.FrontAnimationTick;
  50.                         num8 += Animation % (num11 + num11 * frontAnimationTick) / (1 + frontAnimationTick);
  51.                     }
  52.                     Size size4 = value2.GetSize(num11);
  53.                     if (size4.Width != 48 || size4.Height != 32 || (size4.Width == 96 && size4.Height == 64))
  54.                     {



  55.                         if (!flag4)
  56.                         {
  57.                             value2.Draw(num11, num6, num5 - size4.Height, new Color4(1f, 1f, 1f).ToColor(), false, 1f, ImageType.Image);
  58.                         }
  59.                         else
  60.                         {
  61.                             value2.DrawBlend(num11, num6, num5 - size4.Height, new Color4(0.85f, 0.85f, 0.85f).ToColor(), num8 >= 2723 && num8 <= 2732, 0.618f, ImageType.Image, 0);
  62.                         }


  63.                     }
  64.                 }
  65.                 foreach (MapObject ob in Objects)
  66.                 {
  67.                     if (ob.RenderY == i)
  68.                     {
  69.                         ob.Draw();
  70.                     }
  71.                 }



  72.                 if (!Config.DrawEffects)
  73.                 {
  74.                     continue;
  75.                 }

  76.                 foreach (MirEffect effect in Effects)
  77.                 {
  78.                     if (effect.DrawType != DrawType.Object)
  79.                     {
  80.                         continue;
  81.                     }
  82.                     MapObject target = effect.Target;
  83.                     if (target != null && target.Race == ObjectType.Item && !Config.ShowItemtwinkle)
  84.                     {
  85.                         continue;
  86.                     }
  87.                     if (effect.MapTarget.IsEmpty && effect.Target != null)
  88.                     {
  89.                         if (effect.Target.RenderY == i && effect.Target != User)
  90.                         {
  91.                             effect.Draw();
  92.                         }
  93.                     }
  94.                     else if (effect.MapTarget.Y == i)
  95.                     {
  96.                         effect.Draw();
  97.                     }
  98.                 }
  99.             }
  100.             if (User.Opacity != 1f) return;
  101.             float oldOpacity = MapObject.User.Opacity;
  102.             MapObject.User.Opacity = 0.618F;
  103.             MapObject.User.DrawBody(false);
  104.             MapObject.User.Opacity = oldOpacity;




  105.             if (Config.DrawWeather == 1)//天气系统
  106.                CMist.DrawMist(DXManager.Device);
  107.             //if (Config.DrawWeather == 0)//天气系统
  108.             //    this.CMist.DrawSnow(DXManager.Device);



  109.             if (Config.MgicParticle&&Config.DrawEffects)
  110.             {
  111.                 CFlyingTail.UpdateSystem(CEnvir.Loopdelay, new Vector3(0f, 0f, 0f));
  112.                 CFlyingTail.RenderSystem(DXManager.Device);
  113.                 CSmoke.UpdateSystem(CEnvir.Loopdelay, new Vector3(0f, 0f, 0f));
  114.                 CSmoke.RenderSystem(DXManager.Device);
  115.                 CBoom.UpdateSystem(CEnvir.Loopdelay, new Vector3(0f, 0f, 0f));
  116.                 CBoom.RenderSystem(DXManager.Device);
  117.             }
  118.             if (Config.DrawEffects)
  119.             {
  120.                 foreach (MirEffect ob in Effects)
  121.                 {
  122.                     if (ob.DrawType != DrawType.Object || !ob.MapTarget.IsEmpty || ob.Target != User) continue;

  123.                     ob.Draw();
  124.                 }
  125.             }
  126.         }
复制代码


增强免蜡.txt

31.67 KB, 下载次数: 1, 下载积分: 积分 -5

售价: 500 积分  [记录]  [购买]





上一篇:C#传奇3 Zircon商城代码源代码
下一篇:AppleM22012_0501全套无加密代码 Delphi2007编译带教程
回复

使用道具 举报

© 2001-2024 Discuz! Team. Powered by Discuz! X3.5

GMT+8, 2024-11-21 20:17 , Processed in 0.276381 second(s), 52 queries 手机版|美林GM论坛 ( 蜀ICP备2020030293号-2 )|网站地图

禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.如遇版权问题,请及时QQ联系

快速回复 返回顶部 返回列表