Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ TryFindingShimmerFreeSpot()

Vector2? Terraria.Player.TryFindingShimmerFreeSpot ( )
inlineprivate

Definition at line 27214 of file Player.cs.

27215 {
27216 Point point = base.Top.ToTileCoordinates();
27217 int num = 60;
27218 Vector2? result = null;
27219 bool allowSolidTop = true;
27220 for (int i = 1; i < num; i += 2)
27221 {
27223 if (vector.HasValue)
27224 {
27225 result = vector.Value;
27226 break;
27227 }
27228 }
27229 FindSpawn();
27230 if (!CheckSpawn(SpawnX, SpawnY))
27231 {
27232 SpawnX = -1;
27233 SpawnY = -1;
27234 }
27235 if (!result.HasValue && SpawnX != -1 && SpawnY != -1)
27236 {
27237 for (int j = 1; j < num; j += 2)
27238 {
27240 if (vector2.HasValue)
27241 {
27242 result = vector2.Value;
27243 break;
27244 }
27245 }
27246 }
27247 if (!result.HasValue)
27248 {
27249 for (int k = 1; k < num; k += 2)
27250 {
27251 Vector2? vector3 = ShimmerHelper.FindSpotWithoutShimmer(this, Main.spawnTileX, Main.spawnTileY, k, allowSolidTop);
27252 if (vector3.HasValue)
27253 {
27254 result = vector3.Value;
27255 break;
27256 }
27257 }
27258 }
27259 return result;
27260 }
static ? Vector2 FindSpotWithoutShimmer(Entity entity, int startX, int startY, int expand, bool allowSolidTop)
static bool CheckSpawn(int x, int y)
Definition Player.cs:51050
void FindSpawn()
Definition Player.cs:51095

References Terraria.GameContent.ShimmerHelper.FindSpotWithoutShimmer(), Terraria.Main.spawnTileX, Terraria.Main.spawnTileY, Microsoft.Xna.Framework.Point.X, and Microsoft.Xna.Framework.Point.Y.