Advertisement
Guest User

Untitled

a guest
Nov 22nd, 2014
169
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.56 KB | None | 0 0
  1. internal double SqAbsoluteHeight(int X, int Y)
  2.         {
  3.             Point point = new Point(X, Y);
  4.             if (this.mCoordinatedItems.Contains(point))
  5.             {
  6.                 List<RoomItem> itemsOnSquare = (List<RoomItem>)this.mCoordinatedItems[point];
  7.                 return this.SqAbsoluteHeight(X, Y, itemsOnSquare);
  8.             }
  9.             return (double)this.mDynamicModel.SqFloorHeight[X, Y];
  10.         }
  11.         internal double SqAbsoluteHeight(int X, int Y, List<RoomItem> ItemsOnSquare)
  12.         {
  13.             double result;
  14.             try
  15.             {
  16.                 double num = 0.0;
  17.                 bool flag = false;
  18.                 double num2 = 0.0;
  19.                 foreach (RoomItem current in ItemsOnSquare)
  20.                 {
  21.                     if (current.GetBaseItem().InteractionType == InteractionType.tilestackmagic)
  22.                     {
  23.                         return current.GetZ;
  24.                     }
  25.                     if (current.TotalHeight > num)
  26.                     {
  27.                         if (current.GetBaseItem().IsSeat || current.GetBaseItem().InteractionType == InteractionType.bed || current.GetBaseItem().InteractionType == InteractionType.bedtent)
  28.                         {
  29.                             flag = true;
  30.                             num2 = current.GetBaseItem().Height;
  31.                         }
  32.                         else
  33.                         {
  34.                             flag = false;
  35.                         }
  36.                         num = current.TotalHeight;
  37.                     }
  38.                 }
  39.                 double num3 = (double)this.Model.SqFloorHeight[X, Y];
  40.                 double num4 = num - (double)this.Model.SqFloorHeight[X, Y];
  41.                 if (flag)
  42.                 {
  43.                     num4 -= num2;
  44.                 }
  45.                 if (num4 < 0.0)
  46.                 {
  47.                     num4 = 0.0;
  48.                 }
  49.                 result = num3 + num4;
  50.             }
  51.             catch (Exception pException)
  52.             {
  53.                 Logging.HandleException(pException, "Room.SqAbsoluteHeight");
  54.                 result = 0.0;
  55.             }
  56.             return result;
  57.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement