tModLoader need help

TeaFaris

Terrarian
Hi.
I am a beginner coder, faced such problem as " 'player' does not contain a difinition for 'SickleModPlayer' and no accessible extinsion method 'SickleModPlayer' accepting first argument of type 'Player' could not be found.
I was making class armor and wanted to add damage increase to class weapons.
Code:
using Microsoft.Xna.Framework;
using Terraria;
using Terraria.ModLoader;

namespace SickleMod.Items.SickleDamageClass
{
    public class SickleDamagePlayer : ModPlayer
    {
        public static SickleDamagePlayer ModPlayer(Player player)
        {
            return player.GetModPlayer<SickleDamagePlayer>();
        }
        public float SickleDamageAdd;
        public float SickleDamageMult = 1f;
        public float SickleKnockback;
        public int SickleCrit;

    }
}
Code:
using System.Collections.Generic;
using System.Linq;
using Terraria;
using Terraria.ModLoader;

namespace SickleMod.Items.SickleDamageClass
{
    public abstract class SickleDamageItem : ModItem
    {
        public override bool CloneNewInstances => true;

        public virtual void SafeSetDefaults()
        {
        }

        public override void SetDefaults()
        {
            SafeSetDefaults();
            item.melee = false;
            item.ranged = false;
            item.magic = false;
            item.thrown = false;
            item.summon = false;
        }

        public override void ModifyWeaponDamage(Player player, ref float add, ref float mult, ref float flat)
        {
            add += SickleDamagePlayer.ModPlayer(player).SickleDamageAdd;
            mult *= SickleDamagePlayer.ModPlayer(player).SickleDamageMult;
        }

        public override void GetWeaponKnockback(Player player, ref float knockback)
        {
            knockback += SickleDamagePlayer.ModPlayer(player).SickleKnockback;
        }

        public override void GetWeaponCrit(Player player, ref int crit)
        {
            crit += SickleDamagePlayer.ModPlayer(player).SickleCrit;
        }

        public override void ModifyTooltips(List<TooltipLine> tooltips)
        {
            TooltipLine tt = tooltips.FirstOrDefault(x => x.Name == "Damage" && x.mod == "Terraria");
            if (tt != null)
            {
                string[] splitText = tt.text.Split(' ');
                string damageValue = splitText.First();
                string damageWord = splitText.Last();
                tt.text = damageValue + " reaper " + damageWord;
            }
        }
    }
}
Code:
using Terraria;
using Terraria.ModLoader;
using Terraria.ID;
using SickleMod.Items.SickleDamageClass;

namespace SickleMod.Items.Armor
{
    [AutoloadEquip(EquipType.Head)]
    public class RottenHood : SickleDamageItem
    {
        public override void SetStaticDefaults()
        {
            Tooltip.SetDefault("");
        }

        public override void SetDefaults()
        {
            item.width = 18;
            item.height = 18;
            item.value = 10000;
            item.rare = ItemRarityID.Green;
            item.defense = 4;
        }

        public override void UpdateEquip(Player player)
        {
            player.SickleDamagePlayer += 0.05f;
        }

        public override void UpdateArmorSet (Player player)
        {
        //...
        }
    }
}
 
Back
Top Bottom