360 {
361 int num = (Position1.X +
Width1 / 2) / 16;
365 if (num <= 1)
366 {
367 num = 1;
368 }
369 if (num >= Main.maxTilesX)
370 {
371 num = Main.maxTilesX - 1;
372 }
374 {
376 }
377 if (
num3 >= Main.maxTilesX)
378 {
379 num3 = Main.maxTilesX - 1;
380 }
382 {
384 }
385 if (
num2 >= Main.maxTilesY)
386 {
387 num2 = Main.maxTilesY - 1;
388 }
390 {
392 }
393 if (
num4 >= Main.maxTilesY)
394 {
395 num4 = Main.maxTilesY - 1;
396 }
397 try
398 {
399 do
400 {
404 {
405 return true;
406 }
408 {
409 num = ((num >=
num3) ? (num - 1) : (num + 1));
410 if (Main.tile[num,
num2 - 1] ==
null)
411 {
412 return false;
413 }
414 if (Main.tile[num,
num2 + 1] ==
null)
415 {
416 return false;
417 }
418 if (!Main.tile[num,
num2 - 1].inActive() && Main.tile[num,
num2 - 1].active() && Main.tileSolid[Main.tile[num,
num2 - 1].type] && !Main.tileSolidTop[Main.tile[num,
num2 - 1].type] && Main.tile[num,
num2 - 1].slope() == 0 && !Main.tile[num,
num2 - 1].halfBrick() && !Main.tile[num,
num2 + 1].inActive() && Main.tile[num,
num2 + 1].active() && Main.tileSolid[Main.tile[num,
num2 + 1].type] && !Main.tileSolidTop[Main.tile[num,
num2 + 1].type] && Main.tile[num,
num2 + 1].slope() == 0 && !Main.tile[num,
num2 + 1].halfBrick())
419 {
420 return false;
421 }
422 }
423 else
424 {
426 if (Main.tile[num - 1,
num2] ==
null)
427 {
428 return false;
429 }
430 if (Main.tile[num + 1,
num2] ==
null)
431 {
432 return false;
433 }
434 if (!Main.tile[num - 1,
num2].inActive() && Main.tile[num - 1,
num2].active() && Main.tileSolid[Main.tile[num - 1,
num2].type] && !Main.tileSolidTop[Main.tile[num - 1,
num2].type] && Main.tile[num - 1,
num2].slope() == 0 && !Main.tile[num - 1,
num2].halfBrick() && !Main.tile[num + 1,
num2].inActive() && Main.tile[num + 1,
num2].active() && Main.tileSolid[Main.tile[num + 1,
num2].type] && !Main.tileSolidTop[Main.tile[num + 1,
num2].type] && Main.tile[num + 1,
num2].slope() == 0 && !Main.tile[num + 1,
num2].halfBrick())
435 {
436 return false;
437 }
438 }
439 if (Main.tile[num,
num2] ==
null)
440 {
441 return false;
442 }
443 }
444 while (Main.tile[num,
num2].inActive() || !Main.tile[num,
num2].active() || !Main.tileSolid[Main.tile[num,
num2].type] || Main.tileSolidTop[Main.tile[num,
num2].type]);
445 return false;
446 }
447 catch
448 {
449 return false;
450 }
451 }
static double Abs(double value)