Hi there I am trying to find ways to add token to britiana cleanup so players can get token if they help clean up.

I'm not able to figure out how to do it I could make a custom token, and make it give 50,000 token some how, but not sure, and that why I want to post here maybe somebody knows how to solve this.

This here is Token that we use on our server, and I'm trying to figure out how to add it on the Britannia reward system.

Code:
/*
created by:
     /\            888                   888     .d8888b.   .d8888b. 
____/_ \____       888                   888    d88P  Y88b d88P  Y88b
\  ___\ \  /       888                   888    888    888 888    888
\/ /  \/ /    .d88888  8888b.   8888b.  888888 Y88b. d888 Y88b. d888
/ /\__/_/\   d88" 888     "88b     "88b 888     "Y888P888  "Y888P888
/__\ \_____\  888  888 .d888888 .d888888 888           888        888
    \  /      Y88b 888 888  888 888  888 Y88b.  Y88b  d88P Y88b  d88P
     \/        "Y88888 "Y888888 "Y888888  "Y888  "Y8888P"   "Y8888P" 
*/
///daat99's Token System
///Made by daat99 based on idea by Viago :)
///Thanx for Murzin for all the grammer corrections :)
using Server.Mobiles;
using daat99;

namespace Server.Items
{
    public static class TokenSystem
    {
        public static bool GiveTokensToPlayer(PlayerMobile player, int amount)
        {
            return GiveTokensToPlayer(player, amount, true);
        }
        public static bool GiveTokensToPlayer(PlayerMobile player, int amount, bool informPlayer)
        {
            return MasterStorageUtils.GiveTypeToPlayer(player, typeof(HeroTokens), amount, informPlayer);
        }

        public static bool TakePlayerTokens(PlayerMobile player, int amount)
        {
            return TakePlayerTokens(player, amount, true);
        }
        public static bool TakePlayerTokens(PlayerMobile player, int amount, bool informPlayer)
        {
            return MasterStorageUtils.TakeTypeFromPlayer(player, typeof(HeroTokens), amount, informPlayer);
        }
    }
    public class TokenCheck : Item
    {
        private int i_TokensAmount;
       
        [CommandProperty(AccessLevel.Administrator)]
        public int tokensAmount { get { return i_TokensAmount; } set { i_TokensAmount = value; InvalidateProperties(); } }
       
        [Constructable]
        public TokenCheck() : this( 100 ) { }
        [Constructable]
        public TokenCheck(int tokensAmount) : this ( tokensAmount, false ) { }
        [Constructable]
        public TokenCheck( int tokensAmount, bool blessed ) : base( 5359 )
        {
            Stackable = false;
            Name = "A Token Check";
            Hue = 1173;
            Weight = 1.0;
            if ( blessed )
                LootType = LootType.Blessed;
            i_TokensAmount = tokensAmount;
        }
       
        public override void OnDoubleClick(Mobile from)
        {
            if ( this.IsChildOf( from.Backpack ) )
            {
                if (!(this.Deleted))
                {
                    if ( TokenSystem.GiveTokensToPlayer(from as PlayerMobile, i_TokensAmount) )
                    {
                        from.SendMessage(1173, "You added {0} Tokens to your account using a token check.", i_TokensAmount);
                        this.Delete();
                    }
                    else
                        from.SendMessage(1173, "You were unable to add tokens to your account.");
                }
                else
                {
                    from.PlaySound(1069); //play Hey!! sound
                    from.SendMessage(1173, "Hey, don't try to rob the bank!!!");
                }
            }
            else
                from.SendMessage(1173, "The check must be in your backpack to be used.");
        }

        public override int LabelNumber{ get{ return 1041361; } } // A bank check

        public override void GetProperties(ObjectPropertyList list)
        {
            base.GetProperties( list );

            list.Add( 1060738, i_TokensAmount.ToString() ); // value: ~1_val~
        }
       
        public TokenCheck( Serial serial ) : base( serial )
        {
        }

        public override void Serialize( GenericWriter writer )
        {
            base.Serialize( writer );

            writer.Write( (int) 0 ); // version

            writer.Write( i_TokensAmount );
        }

        public override void Deserialize( GenericReader reader )
        {
            base.Deserialize( reader );

            int version = reader.ReadInt();

            switch (version)
            {
                case 0:
                {
                    i_TokensAmount = reader.ReadInt();
                    break;
                }
            }
        }
    }
   
    public class HeroTokens : Item
    {
        public HeroTokens( int min, int max ) : this( Utility.Random( min, max-min ) )
        {
        }

        [Constructable]
        public HeroTokens() : this( 1 )
        {
        }

        [Constructable]
        public HeroTokens( int amount ) : base( 0xEED )
        {
            Stackable = true;
            Name = "Tokens";
            Hue = 1173;
            Weight = 0;
            Amount = amount;
            LootType = LootType.Blessed;
        }
       
        public override void OnDoubleClick(Mobile from)
        {
            if ( this.IsChildOf(from.Backpack) && !this.Deleted )
            {
                if (TokenSystem.GiveTokensToPlayer(from as PlayerMobile, Amount))
                {
                    from.SendMessage(1173, "You added {0} tokens to your account.", Amount);
                    this.Delete();
                }
                else
                {
                    from.PlaySound(1069); //play Hey!! sound
                    from.SendMessage(1173, "Please make sure your Master Storage is inside your backpack with an active Tokens account.");
                }
            }
            else
            {
                from.PlaySound(1069); //play Hey!! sound
                from.SendMessage(1173, "Hey, don't try to rob the bank!!!");
            }
        }
       
        public HeroTokens( Serial serial ) : base( serial )
        {
        }

        public override void Serialize( GenericWriter writer )
        {
            base.Serialize( writer );

            writer.Write( (int) 0 ); // version
        }

        public override void Deserialize( GenericReader reader )
        {
            base.Deserialize( reader );

            int version = reader.ReadInt();
        }
    }

    public class GiveTokens
    {
        public static void CalculateTokens(Mobile m, BaseCreature creature)
        {
            if (creature.IsBonded)
                return;

            double d_Resists = ((creature.PhysicalResistance + creature.FireResistance + creature.ColdResistance + creature.PoisonResistance + creature.EnergyResistance)/50); //set the amount of resists the monster have
            if (d_Resists < 1.0) //if it have less then total on 100 resists set to 1
                d_Resists = 1.0;
            int i_Hits = (creature.HitsMax/50); //set the amount of max hp the creature had.
            double d_TempTokReward = (i_Hits + ((i_Hits * d_Resists)/10) ); //set the temp reward
                       
            int i_FameKarma = creature.Fame; //set fame\karma reward bonus
            if (creature.Karma < 0)
                i_FameKarma -= creature.Karma;
            else
                i_FameKarma += creature.Karma;
            i_FameKarma = (i_FameKarma/500);
            if (i_FameKarma < 0)
                i_FameKarma = 0;
            d_TempTokReward += i_FameKarma; //add the fame\karma reward to the temp reward

            if (creature.AI == AIType.AI_Mage) //if it's mage add some tokens, it have spells
            {
                double d_Mage = ((creature.Skills[SkillName.Meditation].Value + creature.Skills[SkillName.Magery].Value + creature.Skills[SkillName.EvalInt].Value)/8);
                d_TempTokReward += d_Mage;
            }
                           
            if (creature.HasBreath) //give bonus for creatures that have fire breath
            {
                double d_FireBreath = (creature.HitsMax/75);
                d_TempTokReward += d_FireBreath; //add the firebreath bonus to temp reward
            }   
                           
            int i_TokReward = ((int)d_TempTokReward); //set the reward you'll actually get as half then the temp reward.
            i_TokReward = Utility.RandomMinMax((int)(i_TokReward*0.4), (int)(i_TokReward*0.5));
            if (i_TokReward < 1)
                i_TokReward = 1; //set minimum reward to 1
                           
            RewardTokens(m, i_TokReward);
        }

        public static void RewardTokens(Mobile m, int amount)
        {
            if (amount < 1)
                return;
            MasterStorageUtils.GiveTypeToPlayer(m as PlayerMobile, typeof(HeroTokens), amount, true);
        }
    }
}

Here is code for our britianna reward system.

Code:
using Server;
using System;
using System.Collections.Generic;
using Server.Items;
using Server.Mobiles;

namespace Server.Engines.CleanUpBritannia
{
    public static class CleanUpBritanniaRewards
    {
        public static List<CollectionItem> Rewards { get; set; }
       
        public static void Initialize()
        {
            Rewards = new List<CollectionItem>();

            Rewards.Add(new CollectionItem(typeof(Mailbox), 0x4142, 1113927, 0, 1000));
            Rewards.Add(new CollectionItem(typeof(HumansAndElvesRobe), 0x1F03, 1151202, 0, 1000));
            Rewards.Add(new CollectionItem(typeof(GargoylesAreOurFriendsRobe), 0x1F03, 1151203, 0, 1000));
            Rewards.Add(new CollectionItem(typeof(WeArePiratesRobe), 0x1F03, 1151204, 0, 1000));
            Rewards.Add(new CollectionItem(typeof(FollowerOfBaneRobe), 0x1F03, 1151205, 0, 1000));
            Rewards.Add(new CollectionItem(typeof(QueenDawnForeverRobe), 0x1F03, 1151206, 0, 1000));

            Rewards.Add(new CollectionItem(typeof(LillyPad), 0xDBC, 1023516, 0, 5000));
            Rewards.Add(new CollectionItem(typeof(LillyPads), 0xDBE, 1023518, 0, 5000));
            Rewards.Add(new CollectionItem(typeof(Mushrooms1), 0x0D0F, 1023340, 0, 5000));
            Rewards.Add(new CollectionItem(typeof(Mushrooms2), 0x0D12, 1023340, 0, 5000));
            Rewards.Add(new CollectionItem(typeof(Mushrooms3), 0x0D10, 1023340, 0, 5000));
            Rewards.Add(new CollectionItem(typeof(Mushrooms4), 0x0D13, 1023340, 0, 5000));

            Rewards.Add(new CollectionItem(typeof(NocturneEarrings), 0x1F07, 1151243, 0x3E5, 5000));
            Rewards.Add(new CollectionItem(typeof(SherryTheMouseStatue), 0x20D0, 1080171, 0, 10000));
            Rewards.Add(new CollectionItem(typeof(ChaosTileDeed), 0x14EF, 1080490, 0, 10000));
            Rewards.Add(new CollectionItem(typeof(HonestyVirtueTileDeed), 0x14EF, 1080488, 0, 10000));
            Rewards.Add(new CollectionItem(typeof(CompassionVirtueTileDeed), 0x14EF, 1080481, 0, 10000));
            Rewards.Add(new CollectionItem(typeof(ValorVirtueTileDeed), 0x14EF, 1080486, 0, 10000));
            Rewards.Add(new CollectionItem(typeof(SpiritualityVirtueTileDeed), 0x14EF, 1080484, 0, 10000));
            Rewards.Add(new CollectionItem(typeof(HonorVirtueTileDeed), 0x14EF, 1080485, 0, 10000));
            Rewards.Add(new CollectionItem(typeof(HumilityVirtueTileDeed), 0x14EF, 1080483, 0, 10000));
            Rewards.Add(new CollectionItem(typeof(SacrificeVirtueTileDeed), 0x14EF, 1080482, 0, 10000));
            Rewards.Add(new CollectionItem(typeof(StewardDeed), 0x14F0, 1153344, 0, 10000));

            Rewards.Add(new CollectionItem(typeof(KnightsBascinet), 0x140C, 1151247, 1150, 10000));
            Rewards.Add(new CollectionItem(typeof(KnightsCloseHelm), 0x1408, 1151244, 1150, 10000));
            Rewards.Add(new CollectionItem(typeof(KnightsFemalePlateChest), 0x1C04, 1151253, 1150, 10000));
            Rewards.Add(new CollectionItem(typeof(KnightsNorseHelm), 0x140E, 1151245, 1150, 10000));
            Rewards.Add(new CollectionItem(typeof(KnightsPlateArms), 0x1410, 1151250, 1150, 10000));
            Rewards.Add(new CollectionItem(typeof(KnightsPlateChest), 0x1415, 1151252, 1150, 10000));
            Rewards.Add(new CollectionItem(typeof(KnightsPlateGloves), 0x1414, 1151249, 1150, 10000));
            Rewards.Add(new CollectionItem(typeof(KnightsPlateGorget), 0x1413, 1151248, 1150, 10000));
            Rewards.Add(new CollectionItem(typeof(KnightsPlateHelm), 0x1412, 1151246, 1150, 10000));
            Rewards.Add(new CollectionItem(typeof(KnightsPlateLegs), 0x1411, 1151251, 1150, 10000));

            Rewards.Add(new CollectionItem(typeof(ScoutArms), 0x13DC, 1151257, 1148, 10000));
            Rewards.Add(new CollectionItem(typeof(ScoutBustier), 0x1C0C, 1151262, 1148, 10000));
            Rewards.Add(new CollectionItem(typeof(ScoutChest), 0x13DB, 1151258, 1148, 10000));
            Rewards.Add(new CollectionItem(typeof(ScoutCirclet), 0x2B6E, 1151254, 1148, 10000));
            Rewards.Add(new CollectionItem(typeof(ScoutFemaleChest), 0x1C02, 1151261, 1148, 10000));
            Rewards.Add(new CollectionItem(typeof(ScoutGloves), 0x13D5, 1151259, 1148, 10000));
            Rewards.Add(new CollectionItem(typeof(ScoutGorget), 0x13D6, 1151256, 1148, 10000));
            Rewards.Add(new CollectionItem(typeof(ScoutLegs), 0x13DA, 1151260, 1148, 10000));
            Rewards.Add(new CollectionItem(typeof(ScoutSmallPlateJingasa), 0x2784, 1151255, 1148, 10000));

            Rewards.Add(new CollectionItem(typeof(SorcererArms), 0x13CD, 1151265, 1165, 10000));
            Rewards.Add(new CollectionItem(typeof(SorcererChest), 0x13CC, 1151266, 1165, 10000));
            Rewards.Add(new CollectionItem(typeof(SorcererFemaleChest), 0x1C06, 1151267, 1165, 10000));
            Rewards.Add(new CollectionItem(typeof(SorcererGloves), 0x13C6, 1151268, 1165, 10000));
            Rewards.Add(new CollectionItem(typeof(SorcererGorget), 0x13C7, 1151264, 1165, 10000));
            Rewards.Add(new CollectionItem(typeof(SorcererHat), 0x1718, 1151263, 1165, 10000));
            Rewards.Add(new CollectionItem(typeof(SorcererLegs), 0x13CB, 1151270, 1165, 10000));
            Rewards.Add(new CollectionItem(typeof(SorcererSkirt), 0x1C08, 1151269, 1165, 10000));

            Rewards.Add(new CollectionItem(typeof(YuccaTree), 0x0D37, 1023383, 0, 15000));
            Rewards.Add(new CollectionItem(typeof(TableLamp), 0x49C1, 1151220, 0, 15000));
            Rewards.Add(new CollectionItem(typeof(Bamboo), 0x246D, 1029324, 0, 15000));

            Rewards.Add(new CollectionItem(typeof(HorseBardingDeed), 0x14EF, 1080212, 0, 20000));
            Rewards.Add(new CollectionItem(typeof(ScrollofAlacrity), 0x14EF, 1078604, 1195, 20000));

            Rewards.Add(new CollectionItem(typeof(SnakeSkinBoots), 0x170B, 1151224, 0x7D9, 20000));
            Rewards.Add(new CollectionItem(typeof(BootsOfTheLavaLizard), 0x170B, 1151223, 0x674, 20000));
            Rewards.Add(new CollectionItem(typeof(BootsOfTheIceWyrm), 0x170B, 1151225, 0x482, 20000));
            Rewards.Add(new CollectionItem(typeof(BootsOfTheCrystalHydra), 0x170B, 1151226, 0x47E, 20000));
            Rewards.Add(new CollectionItem(typeof(BootsOfTheThrasher), 0x170B, 1151227, 0x497, 20000));

            Rewards.Add(new CollectionItem(typeof(NaturesTears), 0x0E9C, 1154374, 2075, 20000));
            Rewards.Add(new CollectionItem(typeof(PrimordialDecay), 0x0E9C, 1154737, 1927, 20000));
            Rewards.Add(new CollectionItem(typeof(ArachnidDoom), 0x0E9C, 1154738, 1944, 20000));

            Rewards.Add(new CollectionItem(typeof(SophisticatedElvenTapestry), 0x2D70, 1151222, 0, 50000));
            Rewards.Add(new CollectionItem(typeof(OrnateElvenTapestry), 0x2D72, 1031633, 0, 50000));
            Rewards.Add(new CollectionItem(typeof(ChestOfDrawers), 0x0A2C, 1022604, 0, 50000));
            Rewards.Add(new CollectionItem(typeof(FootedChestOfDrawers), 0x0A30, 1151221, 0, 50000));

            Rewards.Add(new CollectionItem(typeof(DragonHeadDeed), 0x2234, 1028756, 0, 50000));
            Rewards.Add(new CollectionItem(typeof(NestWithEggs), 0x1AD4, 1026868, 2415, 50000));

            Rewards.Add(new CollectionItem(typeof(FishermansHat), 0x1716, 1151238, 2578, 50000));
            Rewards.Add(new CollectionItem(typeof(FishermansTrousers), 0x13DA, 1151239, 2578, 50000));
            Rewards.Add(new CollectionItem(typeof(FishermansVest), 0x13CC, 1151240, 2578, 50000));
            Rewards.Add(new CollectionItem(typeof(FishermansEelskinGloves), 0x13C6, 1151237, 2578, 50000));
            Rewards.Add(new CollectionItem(typeof(FishermansChestguard), 0x4052, 1151578, 2578, 50000));
            Rewards.Add(new CollectionItem(typeof(FishermansKilt), 0x0408, 1151579, 2578, 50000));
            Rewards.Add(new CollectionItem(typeof(FishermansArms), 0x0302, 1151580, 2578, 50000));
            Rewards.Add(new CollectionItem(typeof(FishermansEarrings), 0x4213, 1151581, 2578, 50000));

            Rewards.Add(new CollectionItem(typeof(BestialArms), 0x0302, 1151549, 2010, 50000));
            Rewards.Add(new CollectionItem(typeof(BestialEarrings), 0x4213, 1151547, 2010, 50000));
            Rewards.Add(new CollectionItem(typeof(BestialGloves), 0x13C6, 1151230, 2010, 50000));
            Rewards.Add(new CollectionItem(typeof(BestialGorget), 0x13D6, 1151232, 2010, 50000));
            Rewards.Add(new CollectionItem(typeof(BestialHelm), 0x1545, 1151229, 2010, 50000));
            Rewards.Add(new CollectionItem(typeof(BestialKilt), 0x0408, 1151550, 2010, 50000));
            Rewards.Add(new CollectionItem(typeof(BestialLegs), 0x13CB, 1151231, 2010, 50000));
            Rewards.Add(new CollectionItem(typeof(BestialNecklace), 0x4210, 1151548, 2010, 50000));

            Rewards.Add(new CollectionItem(typeof(VirtuososArmbands), 0x0308, 1151563, 1374, 50000));
            Rewards.Add(new CollectionItem(typeof(VirtuososCap), 0x171C, 1151324, 1374, 50000));
            Rewards.Add(new CollectionItem(typeof(VirtuososCollar), 0x13C7, 1151323, 1374, 50000));
            Rewards.Add(new CollectionItem(typeof(VirtuososEarpieces), 0x4213, 1151562, 1374, 50000));
            Rewards.Add(new CollectionItem(typeof(VirtuososKidGloves), 0x13C6, 1151560, 1374, 50000));
            Rewards.Add(new CollectionItem(typeof(VirtuososKilt), 0x0408, 1151564, 1374, 50000));
            Rewards.Add(new CollectionItem(typeof(VirtuososNecklace), 0x4213, 1151561, 1374, 50000));
            Rewards.Add(new CollectionItem(typeof(VirtuososTunic), 0x13CC, 1151325, 1374, 50000));

            Rewards.Add(new CollectionItem(typeof(FirePitDeed), 0x29FD, 1080206, 0, 75000));
            Rewards.Add(new CollectionItem(typeof(PresentationStone), 0x32F2, 1154745, 0, 75000));
            Rewards.Add(new CollectionItem(typeof(Beehive), 0x091A, 1080263, 0, 80000));
            Rewards.Add(new CollectionItem(typeof(ArcheryButteAddon), 0x100B, 1024106, 0, 80000));

            Rewards.Add(new CollectionItem(typeof(NovoBleue), 0x1086, 1151242, 1165, 150000));
            Rewards.Add(new CollectionItem(typeof(EtoileBleue), 0x108A, 1151241, 1165, 150000));
            Rewards.Add(new CollectionItem(typeof(SoleilRouge), 0x1086, 1154382, 1166, 150000));
            Rewards.Add(new CollectionItem(typeof(LuneRouge), 0x108A, 1154380, 1166, 150000));

            Rewards.Add(new CollectionItem(typeof(IntenseTealPigment), 0xEFF, 1154732, 2691, 250000));
            Rewards.Add(new CollectionItem(typeof(TyrianPurplePigment), 0xEFF, 1154735, 2716, 250000));
            Rewards.Add(new CollectionItem(typeof(MottledSunsetBluePigment), 0xEFF, 1154734, 2714, 250000));
            Rewards.Add(new CollectionItem(typeof(MossyGreenPigment), 0xEFF, 1154731, 2684, 250000));
            Rewards.Add(new CollectionItem(typeof(VibrantOcherPigment), 0xEFF, 1154736, 2725, 250000));
            Rewards.Add(new CollectionItem(typeof(OliveGreenPigment), 0xEFF, 1154733, 2709, 250000));
            Rewards.Add(new CollectionItem(typeof(PolishedBronzePigment), 0xEFF, 1151909, 1944, 250000));
            Rewards.Add(new CollectionItem(typeof(GlossyBluePigment), 0xEFF, 1151910, 1916, 250000));
            Rewards.Add(new CollectionItem(typeof(BlackAndGreenPigment), 0xEFF, 1151911, 1979, 250000));
            Rewards.Add(new CollectionItem(typeof(DeepVioletPigment), 0xEFF, 1151912, 1929, 250000));
            Rewards.Add(new CollectionItem(typeof(AuraOfAmberPigment), 0xEFF, 1152308, 1967, 250000));
            Rewards.Add(new CollectionItem(typeof(MurkySeagreenPigment), 0xEFF, 1152309, 1992, 250000));
            Rewards.Add(new CollectionItem(typeof(ShadowyBluePigment), 0xEFF, 1152310, 1960, 250000));
            Rewards.Add(new CollectionItem(typeof(GleamingFuchsiaPigment), 0xEFF, 1152311, 1930, 250000));
            Rewards.Add(new CollectionItem(typeof(GlossyFuchsiaPigment), 0xEFF, 1152347, 1919, 250000));
            Rewards.Add(new CollectionItem(typeof(DeepBluePigment), 0xEFF, 1152348, 1939, 250000));
            Rewards.Add(new CollectionItem(typeof(VibranSeagreenPigment), 0xEFF, 1152349, 1970, 250000));
            Rewards.Add(new CollectionItem(typeof(MurkyAmberPigment), 0xEFF, 1152350, 1989, 250000));
            Rewards.Add(new CollectionItem(typeof(VibrantCrimsonPigment), 0xEFF, 1153386, 1964, 250000));
            Rewards.Add(new CollectionItem(typeof(ReflectiveShadowPigment), 0xEFF, 1153387, 1910, 250000));
            Rewards.Add(new CollectionItem(typeof(StarBluePigment), 0xEFF, 1154121, 2723, 250000));
            Rewards.Add(new CollectionItem(typeof(MotherOfPearlPigment), 0xEFF, 1154120, 2720, 250000));
            Rewards.Add(new CollectionItem(typeof(LiquidSunshinePigment), 0xEFF, 1154213, 1923, 250000));
            Rewards.Add(new CollectionItem(typeof(DarkVoidPigment), 0xEFF, 1154214, 2068, 250000));

            Rewards.Add(new CollectionItem(typeof(LuckyCharm), 0x2F5B, 1154739, 1923, 300000));
            Rewards.Add(new CollectionItem(typeof(SoldiersMedal), 0x2F5B, 1154740, 1902, 300000));
            Rewards.Add(new CollectionItem(typeof(DuelistsEdge), 0x2F58, 1154741, 1902, 300000));
            Rewards.Add(new CollectionItem(typeof(NecromancersPhylactery), 0x2F5A, 1154742, 1912, 300000));
            Rewards.Add(new CollectionItem(typeof(WizardsCurio), 0x2F58, 1154743, 1912, 300000));
            Rewards.Add(new CollectionItem(typeof(MysticsMemento), 0x2F5B, 1154744, 1912, 300000));
        }
    }
}
 
Back