tModLoader no suitable method found to override

ProGiple

Terrarian
Hello! I have this code:
using Terraria;
using Terraria.ModLoader;
using Terraria.ID;
namespace Archalis.Items.Accs
{
internal class IceSphere : ModItem
{
public override void SetDefaults()
{
Item.width = 34;
Item.height = 34;
Item.accessory = true;
Item.rare = 9;
}
public override void UpdateAccessory(Player player, bool hideVisual)
{
player.buffImmune[BuffID.Frozen] = true;
}
public override void OnHitByNPC(Player player, NPC npc, ref int damage, ref bool crit)
{
int bonusDamage = Main.rand.Next(8, 23);
npc.AddBuff(BuffID.Frostburn, 300);
npc.StrikeNPC(bonusDamage, 0f, 0, crit);
}
public override void AddRecipes()
{
Recipe recipe = CreateRecipe();
recipe.AddIngredient(null, "ObsidianShield", 1);
recipe.AddIngredient(ItemID.Ectoplasm, 8);
recipe.AddTile(TileID.TinkerersWorkbench);
recipe.Register();
}
}
}

But I have this problem if recompile my mod:

"IceSphere.OnHitByNPC(Player, npc, ref int, ref bool)": no suitable method found to override

I need Help!
 
OnHitByNPC is a method on ModPlayer, did you mean to use OnHitNPC?
using Terraria;
using Terraria.ModLoader;
using Terraria.ID;
namespace Archalis.Items.Accs
{
internal class Medal_Summon : ModItem
{
public override void SetDefaults()
{
Item.width = 28;
Item.height = 36;
Item.accessory = true;
Item.rare = 3;
}
public override void UpdateAccessory(Player player, bool hideVisual)
{
ModPlayerExample modPlayer = player.GetModPlayer<ModPlayerExample>();
modPlayer.summonDamageMult += 0.11f;
modPlayer.whipSpeedMult += 0.45f;
player.maxMinions++;
}
public override void AddRecipes()
{
Recipe recipe = CreateRecipe();
recipe.AddIngredient(ItemID.SummonerEmblem, 1);
recipe.AddIngredient(ItemID.HerculesBeetle, 1);
recipe.AddIngredient(ItemID.HallowedBar, 4);
recipe.AddIngredient(ItemID.SoulofLight, 8);
recipe.AddIngredient(ItemID.SoulofNight, 8);
recipe.AddTile(TileID.TinkerersWorkbench);
recipe.Register();
}
}
internal class ModPlayerExample : ModPlayer
{
public float summonDamageMult;
public float whipSpeedMult;
public override void ResetEffects()
{
summonDamageMult = 0f;
whipSpeedMult = 0f;
}
public override void ModifyWeaponDamage(Item item, ref float add, ref float mult, ref float flat)
{
add += summonDamageMult; // Увеличение урона призывателя
}
public override void ModifyWeaponSpeed(Item item, Player player, ref float speed)
{
speed *= 1f + whipSpeedMult; // Увеличение скорости хлыста
}
}
}

This is has the same error.. Can you help me with this?
 
Back
Top Bottom