Overwrite
Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
This commit is contained in:
80
Scripts/Services/BulkOrders/Rewards/RewardsGump.cs
Normal file
80
Scripts/Services/BulkOrders/Rewards/RewardsGump.cs
Normal file
@@ -0,0 +1,80 @@
|
||||
using System;
|
||||
using Server.Engines.BulkOrders;
|
||||
using Server.Gumps;
|
||||
using Server.Mobiles;
|
||||
|
||||
namespace Server.Engines.BulkOrders
|
||||
{
|
||||
public class RewardsGump : BaseRewardGump
|
||||
{
|
||||
public BODType BODType { get; private set; }
|
||||
|
||||
public bool UsingBanked { get; set; }
|
||||
|
||||
public RewardsGump(Mobile owner, PlayerMobile user, BODType type, int points = 0)
|
||||
: base(owner, user, BulkOrderSystem.GetRewardCollection(type), 1157082, points == 0 ? BulkOrderSystem.GetPoints(user, type) : points)
|
||||
{
|
||||
BODType = type;
|
||||
UsingBanked = points == 0;
|
||||
|
||||
var entry = new GumpLabel(230, 65, 0x64, GetPoints(user).ToString("0.000000"));
|
||||
entry.Parent = this;
|
||||
|
||||
Entries.Insert(10, entry);
|
||||
}
|
||||
|
||||
public override int GetYOffset(int id)
|
||||
{
|
||||
if (id == 0x182B)
|
||||
{
|
||||
return 34;
|
||||
}
|
||||
|
||||
return 15;
|
||||
}
|
||||
|
||||
protected override void AddPoints()
|
||||
{
|
||||
}
|
||||
|
||||
public override double GetPoints(Mobile m)
|
||||
{
|
||||
if (Points > 0)
|
||||
return Points;
|
||||
|
||||
return BulkOrderSystem.GetPoints(m, this.BODType);
|
||||
}
|
||||
|
||||
public override void OnConfirmed(CollectionItem citem, int index)
|
||||
{
|
||||
BODCollectionItem item = citem as BODCollectionItem;
|
||||
|
||||
if (item != null && GetPoints(User) >= item.Points && item.Constructor != null)
|
||||
{
|
||||
Item i = item.Constructor(item.RewardType);
|
||||
|
||||
if (User.Backpack == null || !User.Backpack.TryDropItem(User, i, false))
|
||||
{
|
||||
User.SendLocalizedMessage(1074361); // The reward could not be given. Make sure you have room in your pack.
|
||||
i.Delete();
|
||||
|
||||
User.SendGump(new RewardsGump(Owner, User, this.BODType, (int)Points));
|
||||
}
|
||||
else
|
||||
{
|
||||
User.SendLocalizedMessage(1073621); // Your reward has been placed in your backpack.
|
||||
User.PlaySound(0x5A7);
|
||||
|
||||
if (UsingBanked)
|
||||
{
|
||||
BulkOrderSystem.DeductPoints(User, this.BODType, item.Points);
|
||||
}
|
||||
else
|
||||
{
|
||||
BulkOrderSystem.RemovePending(User, this.BODType);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user