Ok I'm a noob, I fixed it changing the logical thing. Probably there is a way to do with the last code part bt this works well:
Code:
public override void OnSpeech(SpeechEventArgs e)
{
if (!e.Handled && e.Mobile.InRange(this.Location,3))
{
if (e.Speech == "...")
{
if (((PlayerMobile)e.Mobile).Skills[SkillName.Stealth].Base > 49 | ((PlayerMobile)e.Mobile).Skills[SkillName.Lockpicking].Base > 49 | ((PlayerMobile)e.Mobile).Skills[SkillName.Hiding].Base > 99)
{
e.Mobile.AddToBackpack(new CustomItem());
this.Say("...");
}
else
{
this.Say("...");
}
}
}