Implement use of PlaceholderProj and PlaceholderTile

This commit is contained in:
2025-11-21 23:56:46 +00:00
parent f6d187274c
commit 48d26de6b0
33 changed files with 51 additions and 18 deletions
@@ -15,6 +15,8 @@ namespace ForgottenWawiTech.Content.Projectiles.Avali
private const float TargetRange = 920f; private const float TargetRange = 920f;
private const float ShotSpeed = 19.5f; private const float ShotSpeed = 19.5f;
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
public override void SetStaticDefaults() public override void SetStaticDefaults()
{ {
ProjectileID.Sets.MinionSacrificable[Type] = false; ProjectileID.Sets.MinionSacrificable[Type] = false;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

@@ -6,8 +6,12 @@ using Terraria.ModLoader;
namespace ForgottenWawiTech.Content.Projectiles.Avali namespace ForgottenWawiTech.Content.Projectiles.Avali
{ {
public class AvaliHuntingDroneShot : ModProjectile public class AvaliHuntingDroneShot : ModProjectile
{ {
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
public override void SetStaticDefaults() public override void SetStaticDefaults()
{ {
ProjectileID.Sets.MinionShot[Type] = true; ProjectileID.Sets.MinionShot[Type] = true;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

@@ -14,6 +14,8 @@ namespace ForgottenWawiTech.Content.Projectiles.Avali
private const int MarkCooldown = 45; private const int MarkCooldown = 45;
private const float MarkRange = 700f; private const float MarkRange = 700f;
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
public override void SetStaticDefaults() public override void SetStaticDefaults()
{ {
ProjectileID.Sets.MinionSacrificable[Type] = false; ProjectileID.Sets.MinionSacrificable[Type] = false;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

@@ -11,6 +11,8 @@ namespace ForgottenWawiTech.Content.Projectiles.Protogen
private const float HomingStrength = 0.14f; private const float HomingStrength = 0.14f;
private const float DesiredSpeed = 14f; private const float DesiredSpeed = 14f;
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
public override void SetStaticDefaults() public override void SetStaticDefaults()
{ {
ProjectileID.Sets.MinionShot[Type] = true; ProjectileID.Sets.MinionShot[Type] = true;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

@@ -16,6 +16,8 @@ namespace ForgottenWawiTech.Content.Projectiles.Protogen
private const float TargetRange = 950f; private const float TargetRange = 950f;
private const float BeamVelocity = 18f; private const float BeamVelocity = 18f;
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
public override void SetStaticDefaults() public override void SetStaticDefaults()
{ {
ProjectileID.Sets.MinionSacrificable[Type] = false; ProjectileID.Sets.MinionSacrificable[Type] = false;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

@@ -9,6 +9,8 @@ namespace ForgottenWawiTech.Content.Projectiles.Protogen
{ {
public class ProtogenSentinelCoreBeam : ModProjectile public class ProtogenSentinelCoreBeam : ModProjectile
{ {
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
public override void SetStaticDefaults() public override void SetStaticDefaults()
{ {
ProjectileID.Sets.MinionShot[Type] = true; ProjectileID.Sets.MinionShot[Type] = true;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

@@ -9,6 +9,8 @@ namespace ForgottenWawiTech.Content.Projectiles.Protogen
{ {
public class ProtogenSentinelFragment : ModProjectile public class ProtogenSentinelFragment : ModProjectile
{ {
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
private const float HomingRange = 560f; private const float HomingRange = 560f;
private const float HomingStrength = 0.18f; private const float HomingStrength = 0.18f;
private const float DesiredSpeed = 15f; private const float DesiredSpeed = 15f;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

@@ -15,6 +15,8 @@ namespace ForgottenWawiTech.Content.Projectiles.Singularity
private const float TargetRange = 1000f; private const float TargetRange = 1000f;
private const float BeamSpeed = 21f; private const float BeamSpeed = 21f;
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
public override void SetStaticDefaults() public override void SetStaticDefaults()
{ {
ProjectileID.Sets.MinionSacrificable[Type] = false; ProjectileID.Sets.MinionSacrificable[Type] = false;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

@@ -12,6 +12,8 @@ namespace ForgottenWawiTech.Content.Projectiles.Singularity
ProjectileID.Sets.MinionShot[Type] = true; ProjectileID.Sets.MinionShot[Type] = true;
} }
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
public override void SetDefaults() public override void SetDefaults()
{ {
Projectile.width = 16; Projectile.width = 16;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

@@ -11,10 +11,7 @@ namespace ForgottenWawiTech.Content.Projectiles.Transcendent
private const float HomingStrength = 0.2f; private const float HomingStrength = 0.2f;
private const float DesiredSpeed = 20f; private const float DesiredSpeed = 20f;
/* public override void SetStaticDefaults() public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
{
ProjectileID.Sets.MinionShot[Type] = true;
} */
public override void SetDefaults() public override void SetDefaults()
{ {
Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

@@ -15,6 +15,8 @@ namespace ForgottenWawiTech.Content.Projectiles.Transcendent
private const float TargetRange = 1100f; private const float TargetRange = 1100f;
private const float BoltSpeed = 19f; private const float BoltSpeed = 19f;
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
public override void SetStaticDefaults() public override void SetStaticDefaults()
{ {
ProjectileID.Sets.MinionSacrificable[Type] = false; ProjectileID.Sets.MinionSacrificable[Type] = false;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

@@ -14,6 +14,8 @@ namespace ForgottenWawiTech.Content.Projectiles.Transcendent
ProjectileID.Sets.TrailingMode[Type] = 2; ProjectileID.Sets.TrailingMode[Type] = 2;
} }
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
public override void SetDefaults() public override void SetDefaults()
{ {
Projectile.width = 18; Projectile.width = 18;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

@@ -16,6 +16,8 @@ namespace ForgottenWawiTech.Content.Projectiles.Transcendent
ProjectileID.Sets.MinionShot[Type] = true; ProjectileID.Sets.MinionShot[Type] = true;
} }
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
public override void SetDefaults() public override void SetDefaults()
{ {
Projectile.width = 14; Projectile.width = 14;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

@@ -15,6 +15,8 @@ namespace ForgottenWawiTech.Content.Projectiles.Transcendent
ProjectileID.Sets.TrailingMode[Type] = 2; ProjectileID.Sets.TrailingMode[Type] = 2;
} }
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
public override void SetDefaults() public override void SetDefaults()
{ {
Projectile.width = 28; Projectile.width = 28;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

@@ -15,6 +15,8 @@ namespace ForgottenWawiTech.Content.Projectiles.Transcendent
ProjectileID.Sets.TrailingMode[Type] = 3; ProjectileID.Sets.TrailingMode[Type] = 3;
} }
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
public override void SetDefaults() public override void SetDefaults()
{ {
Projectile.width = 14; Projectile.width = 14;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 504 B

@@ -8,7 +8,7 @@ namespace ForgottenWawiTech.Content.Projectiles.TridentOfTheSunken
{ {
public class TridentOfTheSunkenBlast : ModProjectile public class TridentOfTheSunkenBlast : ModProjectile
{ {
public override string Texture => "Terraria/Images/Projectile_647"; // Duke Fishron bubble burst as placeholder public override string Texture => "ForgottenWawiTech/Assets/PlaceholderProj";
public override void SetDefaults() public override void SetDefaults()
{ {
@@ -4,15 +4,20 @@ using Terraria.ID;
using Microsoft.Xna.Framework; using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Graphics;
using Terraria.Localization; using Terraria.Localization;
using Terraria.DataStructures;
using Terraria.ObjectData;
namespace ForgottenWawiTech.Content.Tiles.CraftingStations namespace ForgottenWawiTech.Content.Tiles.CraftingStations
{ {
public class HighTechMarvel : ModTile public class HighTechMarvel : ModTile
{ {
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderTile";
public override void SetStaticDefaults() public override void SetStaticDefaults()
{ {
Main.tileSolid[Type] = false; Main.tileSolid[Type] = false;
Main.tileNoAttach[Type] = true; Main.tileNoAttach[Type] = true;
Main.tileFrameImportant[Type] = true;
AdjTiles = new int[] { AdjTiles = new int[] {
TileID.WorkBenches, TileID.WorkBenches,
TileID.Anvils, TileID.Anvils,
@@ -29,8 +34,11 @@ namespace ForgottenWawiTech.Content.Tiles.CraftingStations
TileID.LunarCraftingStation TileID.LunarCraftingStation
}; };
AddMapEntry(new Color(150, 50, 250), Language.GetText("High Tech Marvel")); TileObjectData.newTile.CopyFrom(TileObjectData.Style2x2);
//TileObjectData.newTile.CopyFrom(TileObjectData.Style3x2); // Register the object data so TileObjectData lookups succeed.
TileObjectData.addTile(Type);
AddMapEntry(new Color(120, 85, 60), Language.GetText("HighTechMarvel"));
} }
@@ -4,15 +4,19 @@ using Terraria.ID;
using Microsoft.Xna.Framework; using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Graphics;
using Terraria.Localization; using Terraria.Localization;
using Terraria.DataStructures;
using Terraria.ObjectData;
namespace ForgottenWawiTech.Content.Tiles.CraftingStations namespace ForgottenWawiTech.Content.Tiles.CraftingStations
{ {
public class SingularitySealingUnit : ModTile public class SingularitySealingUnit : ModTile
{ {
public override string Texture => "ForgottenWawiTech/Assets/PlaceholderTile"; // 2x2 placeholder tile
public override void SetStaticDefaults() public override void SetStaticDefaults()
{ {
Main.tileSolid[Type] = false; Main.tileSolid[Type] = false;
Main.tileNoAttach[Type] = true; Main.tileNoAttach[Type] = true;
Main.tileFrameImportant[Type] = true;
AdjTiles = new int[] { AdjTiles = new int[] {
TileID.WorkBenches, TileID.WorkBenches,
TileID.Anvils, TileID.Anvils,
@@ -27,17 +31,11 @@ namespace ForgottenWawiTech.Content.Tiles.CraftingStations
TileID.CrystalBall, TileID.CrystalBall,
TileID.TinkerersWorkbench TileID.TinkerersWorkbench
}; };
AddMapEntry(new Color(150, 50, 250), Language.GetText("SingularitySealingUnitItem")); TileObjectData.newTile.CopyFrom(TileObjectData.Style2x2);
//TileObjectData.newTile.CopyFrom(TileObjectData.Style3x2); // Register the tile's placement data so the loader doesn't throw.
} TileObjectData.addTile(Type);
AddMapEntry(new Color(120, 85, 60), Language.GetText("SingularitySealingUnit"));
/* public override void NearbyEffects(int i, int j, bool closer)
{
if (closer)
{
Main.LocalPlayer.AddBuff(BuffID.WellFed, 60);
} }
} */
} }
} }