public override bool OnDragDropInto(Mobile from, Item item, Point3D p) { if (!base.OnDragDropInto(from, item, p)) { return(false); } DefiledRewards.TradeInItem(item, (PlayerMobile)from); return(true); }
public override bool OnDragDrop(Mobile from, Item dropped) { if (!base.OnDragDrop(from, dropped)) { return(false); } DefiledRewards.TradeInItem(dropped, (PlayerMobile)from); return(true); }
public override void OnResponse(NetState state, RelayInfo info) { PlayerMobile pm = (PlayerMobile)m_From; if (info.ButtonID == 1 && info.Switches.Length > 0) // Okay { int cnum = info.Switches[0]; int cat = cnum % 256; int ent = cnum >> 8; if (cat >= 0 && cat < Categories.Length) { if (ent >= 0 && ent < Categories[cat].Entries.Length) { DefiledRewardEntry entry = Categories[cat].Entries[ent]; if (pm.EvilPoints >= entry.Cost) { DefiledRewards.GiveReward(entry, pm); } else { pm.SendMessage("You must earn more of the guardian's favour."); } } } } else if (info.ButtonID == 2) // Worshio { if (pm.InjuryPoints == 0) { pm.SendMessage("You worship the Guardian."); } else if (pm.EvilPoints < 10) { pm.SendMessage("You worship the Guardian, but he cares little for you."); } else { pm.SendMessage("You beseech The Guardian for the power to continue."); while (pm.EvilPoints >= 10 && pm.InjuryPoints > 0) { pm.EvilPoints -= 10; pm.InjuryPoints -= 1; } } } }