public IncreaseSkillsGump(PlayerMobile mobile, SoulStone ball, double[] values, int page) : this(mobile, ball, false, page) { int zz = Core.SA ? 58 : Core.ML ? 55 : Core.SE ? 54 : Core.AOS ? 52 : 49; for (int x = 0; x < zz; x++) m_StartValue[x] = values[x]; }
public override void OnResponse(NetState state, RelayInfo info) { Mobile from = state.Mobile; switch (info.ButtonID) { case 0: //Close Gump { from.CloseGump(typeof(SoulstoneDeedGump)); break; } case 1: // Green Soulstone { Item item = new SoulStone(from.Account.ToString()); from.BankBox.AddItem( item ); from.CloseGump( typeof( SoulstoneDeedGump )); from.SendMessage( "A green soulstone has been placed into your bankbox." ); m_Deed.Delete(); break; } case 2: // Red Soulstone { Item item = new RedSoulstone( from.Account.ToString() ); from.BankBox.AddItem( item ); from.CloseGump( typeof( SoulstoneDeedGump )); from.SendMessage( "A red soulstone has been placed into your bankbox." ); m_Deed.Delete(); break; } case 3: // Blue Soulstone { Item item = new BlueSoulstone( from.Account.ToString() ); from.BankBox.AddItem( item ); from.CloseGump( typeof( SoulstoneDeedGump )); from.SendMessage( "A blue soulstone has been placed into your bankbox." ); m_Deed.Delete(); break; } } }
public ErrorGump(SoulStone stone, int title, int message) : base(50, 50) { m_Stone = stone; AddBackground(0, 0, 520, 440, 0x13BE); AddImageTiled(10, 10, 500, 20, 0xA40); AddImageTiled(10, 40, 500, 360, 0xA40); AddImageTiled(10, 410, 500, 20, 0xA40); AddAlphaRegion(10, 10, 500, 420); AddHtmlLocalized(10, 12, 500, 20, title, 0x7FFF, false, false); AddHtmlLocalized(10, 42, 500, 110, message, 0x7FFF, false, true); AddButton(10, 380, 0xFA5, 0xFA6, 1, GumpButtonType.Reply, 0); AddHtmlLocalized(45, 382, 450, 20, 1052072, 0x7FFF, false, false); // Continue AddButton(10, 410, 0xFB1, 0xFB2, 0, GumpButtonType.Reply, 0); AddHtmlLocalized(45, 412, 450, 20, 1060051, 0x7FFF, false, false); // CANCEL }
public ErrorGump( SoulStone stone, int title, int message ) : base( 50, 50 ) { m_Stone = stone; AddBackground( 0, 0, 520, 440, 0x13BE ); AddImageTiled( 10, 10, 500, 20, 0xA40 ); AddImageTiled( 10, 40, 500, 360, 0xA40 ); AddImageTiled( 10, 410, 500, 20, 0xA40 ); AddAlphaRegion( 10, 10, 500, 420 ); AddHtmlLocalized( 10, 12, 500, 20, title, 0x7FFF, false, false ); AddHtmlLocalized( 10, 42, 500, 110, message, 0x7FFF, false, true ); AddButton( 10, 380, 0xFA5, 0xFA6, 1, GumpButtonType.Reply, 0 ); AddHtmlLocalized( 45, 382, 450, 20, 1052072, 0x7FFF, false, false ); // Continue AddButton( 10, 410, 0xFB1, 0xFB2, 0, GumpButtonType.Reply, 0 ); AddHtmlLocalized( 45, 412, 450, 20, 1060051, 0x7FFF, false, false ); // CANCEL }
public ConfirmRemovalGump( SoulStone stone ) : base( 50, 50 ) { m_Stone = stone; AddBackground( 0, 0, 520, 440, 0x13BE ); AddImageTiled( 10, 10, 500, 20, 0xA40 ); AddImageTiled( 10, 40, 500, 360, 0xA40 ); AddImageTiled( 10, 410, 500, 20, 0xA40 ); AddAlphaRegion( 10, 10, 500, 420 ); AddHtmlLocalized( 10, 12, 500, 20, 1070725, 0x7FFF, false, false ); // <CENTER>Confirm Soulstone Skill Removal</CENTER> /* WARNING!<BR><BR> * * You are about to permanently remove all skill points stored in this Soulstone. * You WILL NOT absorb these skill points. They will be DELETED.<BR><BR> * * Are you sure you wish to do this? If not, press the Cancel button. */ AddHtmlLocalized( 10, 42, 500, 110, 1070724, 0x7FFF, false, true ); AddButton( 10, 380, 0xFA5, 0xFA6, 1, GumpButtonType.Reply, 0 ); AddHtmlLocalized( 45, 382, 450, 20, 1052072, 0x7FFF, false, false ); // Continue AddButton( 10, 410, 0xFB1, 0xFB2, 0, GumpButtonType.Reply, 0 ); AddHtmlLocalized( 45, 412, 450, 20, 1060051, 0x7FFF, false, false ); // CANCEL }
public ConfirmTransferGump( SoulStone stone, Mobile from ) : base( 50, 50 ) { m_Stone = stone; AddBackground( 0, 0, 520, 440, 0x13BE ); AddImageTiled( 10, 10, 500, 20, 0xA40 ); AddImageTiled( 10, 40, 500, 360, 0xA40 ); AddImageTiled( 10, 410, 500, 20, 0xA40 ); AddAlphaRegion( 10, 10, 500, 420 ); AddHtmlLocalized( 10, 12, 500, 20, 1070709, 0x7FFF, false, false ); // <CENTER>Confirm Soulstone Transfer</CENTER> /* <CENTER>Soulstone</CENTER><BR> * You are using a Soulstone. This powerful artifact allows you to remove skill points * from your character and store them in the stone for later retrieval. In order to use * the stone, you must make sure your Skill Lock for the indicated skill is pointed downward. * Click the "Skills" button on your Paperdoll to access the Skill List, and double-check * your skill lock.<BR><BR> * * Once you activate the stone, all skill points in the indicated skill will be removed from * your character. These skill points can later be retrieved. IMPORTANT: When retrieving * skill points from a Soulstone, the Soulstone WILL REPLACE any existing skill points * already on your character!<BR><BR> * * This is an Account Bound Soulstone. Skill pointsstored inside can be retrieved by any * character on the same account as the character who placed them into the stone. */ AddHtmlLocalized( 10, 42, 500, 110, 1061067, 0x7FFF, false, true ); AddHtmlLocalized( 10, 200, 390, 20, 1070718, 0x7FFF, false, false ); // Skill Stored: AddHtmlLocalized( 210, 200, 390, 20, 1044060 + (int)stone.Skill, 0x7FFF, false, false ); Skill fromSkill = from.Skills[stone.Skill]; AddHtmlLocalized( 10, 220, 390, 20, 1062298, 0x7FFF, false, false ); // Current Value: AddLabel( 210, 220, 0x481, fromSkill.Base.ToString( "0.0" ) ); AddHtmlLocalized( 10, 240, 390, 20, 1062299, 0x7FFF, false, false ); // Current Cap: AddLabel( 210, 240, 0x481, fromSkill.Cap.ToString( "0.0" ) ); AddHtmlLocalized( 10, 260, 390, 20, 1062300, 0x7FFF, false, false ); // New Value: AddLabel( 210, 260, 0x481, stone.SkillValue.ToString( "0.0" ) ); AddButton( 10, 360, 0xFA5, 0xFA6, 2, GumpButtonType.Reply, 0 ); AddHtmlLocalized( 45, 362, 450, 20, 1070719, 0x7FFF, false, false ); // Activate the stone. I am ready to retrieve the skill points from it. AddButton( 10, 380, 0xFA5, 0xFA6, 1, GumpButtonType.Reply, 0 ); AddHtmlLocalized( 45, 382, 450, 20, 1070723, 0x7FFF, false, false ); // Remove all skill points from this stone and DO NOT absorb them. AddButton( 10, 410, 0xFB1, 0xFB2, 0, GumpButtonType.Reply, 0 ); AddHtmlLocalized( 45, 412, 450, 20, 1060051, 0x7FFF, false, false ); // CANCEL }
public SelectSkillGump( SoulStone stone, Mobile from ) : base( 50, 50 ) { m_Stone = stone; AddPage( 0 ); AddBackground( 0, 0, 520, 440, 0x13BE ); AddImageTiled( 10, 10, 500, 20, 0xA40 ); AddImageTiled( 10, 40, 500, 360, 0xA40 ); AddImageTiled( 10, 410, 500, 20, 0xA40 ); AddAlphaRegion( 10, 10, 500, 420 ); AddHtmlLocalized( 10, 12, 500, 20, 1061087, 0x7FFF, false, false ); // Which skill do you wish to transfer to the Soulstone? AddButton( 10, 410, 0xFB1, 0xFB2, 0, GumpButtonType.Reply, 0 ); AddHtmlLocalized( 45, 412, 450, 20, 1060051, 0x7FFF, false, false ); // CANCEL for ( int i = 0, n = 0; i < from.Skills.Length; i++ ) { Skill skill = from.Skills[i]; if ( skill.Base > 0.0 ) { int p = n % 30; if ( p == 0 ) { int page = n / 30; if ( page > 0 ) { AddButton( 260, 380, 0xFA5, 0xFA6, 0, GumpButtonType.Page, page + 1 ); AddHtmlLocalized( 305, 382, 200, 20, 1011066, 0x7FFF, false, false ); // Next page } AddPage( page + 1 ); if ( page > 0 ) { AddButton( 10, 380, 0xFAE, 0xFAF, 0, GumpButtonType.Page, page ); AddHtmlLocalized( 55, 382, 200, 20, 1011067, 0x7FFF, false, false ); // Previous page } } int x = ( p % 2 == 0 ) ? 10 : 260; int y = ( p / 2 ) * 20 + 40; AddButton( x, y, 0xFA5, 0xFA6, i + 1, GumpButtonType.Reply, 0 ); AddHtmlLocalized(x + 45, y + 2, 200, 20, AosSkillBonuses.GetLabel(skill.SkillName), 0x7FFF, false, false); n++; } } }
public override void OnResponse( GameClient sender, RelayInfo info ) { PlayerMobile pm = from as PlayerMobile; if ( info.ButtonID == 1 ) { BankBox bank = from.BankBox; if ( bank == null ) return; Accounting.Account acct = from.Account as Accounting.Account; switch ( token.Type ) { case PromotionalType.SoulStone: { SoulStone ss = new SoulStone( acct.Username ); bank.DropItem( ss ); from.SendLocalizedMessage( 1070743 ); // A Soulstone has been created in your bank box! break; } case PromotionalType.BlueSoulstone: { SoulStone ss = new BlueSoulstone( acct.Username ); bank.DropItem( ss ); from.SendMessage( "A Blue Soulstone has been created in your bank box!" ); break; } case PromotionalType.SoulStoneFragment: { int offset = Utility.Random( 0, 8 ); SoulStoneFragment ssf = new SoulStoneFragment( 0x2AA1 + offset, acct.Username ); bank.DropItem( ssf ); from.SendLocalizedMessage( 1070976 ); // A soulstone fragment has been created in your bank box. break; } case PromotionalType.AdvancedCharacter: { pm.SendGump( new AdvancedCharacterChoiceGump() ); pm.ACState = AdvancedCharacterState.InUse; break; } case PromotionalType.SeventhAnniversary: { //Cerramos algún posible gump abierto (exploit arreglado) if ( !pm.HasGump( typeof( SeventhAniversaryGump ) ) ) pm.SendGump( new SeventhAniversaryGump( token ) ); break; } case PromotionalType.EighthAnniversary: { //Cerramos algún posible gump abierto (exploit arreglado) if ( !pm.HasGump( typeof( EighthAnniversaryGump ) ) ) pm.SendGump( new EighthAnniversaryGump( token ) ); break; } case PromotionalType.BrokenFurniture: { //Cerramos algún posible gump abierto (exploit arreglado) if ( !pm.HasGump( typeof( BrokenFurnitureGump ) ) ) pm.SendGump( new BrokenFurnitureConfirmGump( token ) ); break; } case PromotionalType.HeritageItems: { //Cerramos algún posible gump abierto (exploit arreglado) if ( !pm.HasGump( typeof( HeritageItemsGump ) ) ) pm.SendGump( new HeritageItemsConfirmGump( token ) ); break; } case PromotionalType.EvilHomeDecoration: { //Cerramos algún posible gump abierto (exploit arreglado) if ( !pm.HasGump( typeof( EvilHomeDecorationGump ) ) ) pm.SendGump( new EvilHomeDecorationConfirmGump( token ) ); break; } // TODO: character transfer } if ( token.Type != PromotionalType.SeventhAnniversary && token.Type != PromotionalType.EighthAnniversary ) token.Delete(); } }
public override void OnResponse(GameClient sender, RelayInfo info) { PlayerMobile pm = from as PlayerMobile; if (info.ButtonID == 1) { BankBox bank = from.BankBox; if (bank == null) { return; } Accounting.Account acct = from.Account as Accounting.Account; switch (token.Type) { case PromotionalType.SoulStone: { SoulStone ss = new SoulStone(acct.Username); bank.DropItem(ss); from.SendLocalizedMessage(1070743); // A Soulstone has been created in your bank box! break; } case PromotionalType.BlueSoulstone: { SoulStone ss = new BlueSoulstone(acct.Username); bank.DropItem(ss); from.SendMessage("A Blue Soulstone has been created in your bank box!"); break; } case PromotionalType.SoulStoneFragment: { int offset = Utility.Random(0, 8); SoulStoneFragment ssf = new SoulStoneFragment(0x2AA1 + offset, acct.Username); bank.DropItem(ssf); from.SendLocalizedMessage(1070976); // A soulstone fragment has been created in your bank box. break; } case PromotionalType.AdvancedCharacter: { pm.SendGump(new AdvancedCharacterChoiceGump()); pm.ACState = AdvancedCharacterState.InUse; break; } case PromotionalType.SeventhAnniversary: { //Cerramos algún posible gump abierto (exploit arreglado) if (!pm.HasGump(typeof(SeventhAniversaryGump))) { pm.SendGump(new SeventhAniversaryGump(token)); } break; } case PromotionalType.EighthAnniversary: { //Cerramos algún posible gump abierto (exploit arreglado) if (!pm.HasGump(typeof(EighthAnniversaryGump))) { pm.SendGump(new EighthAnniversaryGump(token)); } break; } case PromotionalType.BrokenFurniture: { //Cerramos algún posible gump abierto (exploit arreglado) if (!pm.HasGump(typeof(BrokenFurnitureGump))) { pm.SendGump(new BrokenFurnitureConfirmGump(token)); } break; } case PromotionalType.HeritageItems: { //Cerramos algún posible gump abierto (exploit arreglado) if (!pm.HasGump(typeof(HeritageItemsGump))) { pm.SendGump(new HeritageItemsConfirmGump(token)); } break; } case PromotionalType.EvilHomeDecoration: { //Cerramos algún posible gump abierto (exploit arreglado) if (!pm.HasGump(typeof(EvilHomeDecorationGump))) { pm.SendGump(new EvilHomeDecorationConfirmGump(token)); } break; } // TODO: character transfer } if (token.Type != PromotionalType.SeventhAnniversary && token.Type != PromotionalType.EighthAnniversary) { token.Delete(); } } }
public SelectSkillGump(SoulStone stone, Mobile from) : base(50, 50) { m_Stone = stone; AddKRHtmlLocalized(0, 0, 0, 0, -1, false, false); AddPage(0); AddBackground(0, 0, 520, 440, 0x13BE); AddImageTiled(10, 10, 500, 20, 0xA40); AddImageTiled(10, 40, 500, 360, 0xA40); AddImageTiled(10, 410, 500, 20, 0xA40); AddAlphaRegion(10, 10, 500, 420); AddButton(10, 410, 0xFB1, 0xFB2, 0, GumpButtonType.Reply, 0); AddHtmlLocalized(45, 412, 450, 20, 1060051, 0x7FFF, false, false); // CANCEL AddHtmlLocalized(10, 12, 500, 20, 1061087, 0x7FFF, false, false); // Which skill do you wish to transfer to the Soulstone? AddPage(1); int skillnumber = 0; for (int i = 0; i < from.Skills.Length; i++) { Skill skill = from.Skills[i]; if (skill.Base > 0.0) { skillnumber++; } } if (skillnumber > 30) { AddButton(260, 380, 0xFA5, 0xFA6, 0, GumpButtonType.Page, 2); AddHtmlLocalized(305, 382, 200, 20, 1011066, 0x7FFF, false, false); // Next page } else { AddKRButton(0, 0, 0x0, 0x0, 0, GumpButtonType.Page, 0); AddKRHtmlLocalized(0, 0, 0, 0, 1015313, false, false); } for (int i = 0, n = 0; i < from.Skills.Length; i++) { Skill skill = from.Skills[i]; if (skill.Base > 0.0) { int p = n % 30; if (p == 0 && n != 0) { AddPage(2); } int x = (p % 2 == 0) ? 10 : 260; int y = (p / 2) * 20 + 40; AddButton(x, y, 0xFA5, 0xFA6, i + 1, GumpButtonType.Reply, 0); AddHtmlLocalized(x + 45, y + 2, 200, 20, 1044060 + i, 0x7FFF, false, false); n++; } } if (skillnumber > 30) { AddButton(10, 380, 0xFAE, 0xFAF, 0, GumpButtonType.Page, 1); AddHtmlLocalized(55, 382, 200, 20, 1011067, 0x7FFF, false, false); // Previous page } else { AddKRButton(0, 0, 0x0, 0x0, 0, GumpButtonType.Page, 0); AddKRHtmlLocalized(0, 0, 0, 0, 1015313, false, false); } }
public SelectSkillGump( SoulStone stone, Mobile from ) : base(50, 50) { m_Stone = stone; AddKRHtmlLocalized( 0, 0, 0, 0, -1, false, false ); AddPage( 0 ); AddBackground( 0, 0, 520, 440, 0x13BE ); AddImageTiled( 10, 10, 500, 20, 0xA40 ); AddImageTiled( 10, 40, 500, 360, 0xA40 ); AddImageTiled( 10, 410, 500, 20, 0xA40 ); AddAlphaRegion( 10, 10, 500, 420 ); AddButton( 10, 410, 0xFB1, 0xFB2, 0, GumpButtonType.Reply, 0 ); AddHtmlLocalized( 45, 412, 450, 20, 1060051, 0x7FFF, false, false ); // CANCEL AddHtmlLocalized( 10, 12, 500, 20, 1061087, 0x7FFF, false, false ); // Which skill do you wish to transfer to the Soulstone? AddPage( 1 ); int skillnumber = 0; for ( int i = 0; i < from.Skills.Length; i++ ) { Skill skill = from.Skills[i]; if ( skill.Base > 0.0 ) skillnumber++; } if ( skillnumber > 30 ) { AddButton( 260, 380, 0xFA5, 0xFA6, 0, GumpButtonType.Page, 2 ); AddHtmlLocalized( 305, 382, 200, 20, 1011066, 0x7FFF, false, false ); // Next page } else { AddKRButton( 0, 0, 0x0, 0x0, 0, GumpButtonType.Page, 0 ); AddKRHtmlLocalized( 0, 0, 0, 0, 1015313, false, false ); } for ( int i = 0, n = 0; i < from.Skills.Length; i++ ) { Skill skill = from.Skills[i]; if ( skill.Base > 0.0 ) { int p = n % 30; if ( p == 0 && n != 0 ) AddPage( 2 ); int x = ( p % 2 == 0 ) ? 10 : 260; int y = ( p / 2 ) * 20 + 40; AddButton( x, y, 0xFA5, 0xFA6, i + 1, GumpButtonType.Reply, 0 ); AddHtmlLocalized( x + 45, y + 2, 200, 20, 1044060 + i, 0x7FFF, false, false ); n++; } } if ( skillnumber > 30 ) { AddButton( 10, 380, 0xFAE, 0xFAF, 0, GumpButtonType.Page, 1 ); AddHtmlLocalized( 55, 382, 200, 20, 1011067, 0x7FFF, false, false ); // Previous page } else { AddKRButton( 0, 0, 0x0, 0x0, 0, GumpButtonType.Page, 0 ); AddKRHtmlLocalized( 0, 0, 0, 0, 1015313, false, false ); } }
public ConfirmRemovalGump( SoulStone stone ) : base(50, 50) { m_Stone = stone; AddKRHtmlLocalized( 0, 0, 0, 0, -9, false, false ); AddPage( 0 ); AddBackground( 0, 0, 520, 440, 0x13BE ); AddImageTiled( 10, 10, 500, 20, 0xA40 ); AddImageTiled( 10, 40, 500, 360, 0xA40 ); AddImageTiled( 10, 410, 500, 20, 0xA40 ); AddAlphaRegion( 10, 10, 500, 420 ); AddButton( 10, 410, 0xFB1, 0xFB2, 0, GumpButtonType.Reply, 0 ); AddHtmlLocalized( 45, 412, 450, 20, 1060051, 0x7FFF, false, false ); // CANCEL AddHtmlLocalized( 10, 12, 500, 20, 1070725, 0x7FFF, false, false ); // <CENTER>Confirm Soulstone Skill Removal</CENTER> /* WARNING!<BR><BR> * * You are about to permanently remove all skill points stored in this Soulstone. * You WILL NOT absorb these skill points. They will be DELETED.<BR><BR> * * Are you sure you wish to do this? If not, press the Cancel button. */ AddHtmlLocalized( 10, 42, 500, 110, 1070724, 0x7FFF, false, true ); AddHtmlLocalized( 10, 200, 390, 20, 1070718, 0x7FFF, false, false ); // Skill Stored: AddHtmlLocalized( 210, 200, 390, 20, 1044060 + (int) stone.Skill, 0x7FFF, false, false ); AddHtmlLocalized( 10, 220, 390, 20, 1062298, 0x7FFF, false, false ); // Current Value: AddLabel( 210, 220, 0x481, stone.SkillValue.ToString( "0.0" ) ); AddButton( 10, 380, 0xFA5, 0xFA6, 1000, GumpButtonType.Reply, 0 ); AddHtmlLocalized( 45, 382, 450, 20, 1070723, 0x7FFF, false, false ); // Remove all skill points from this stone and DO NOT absorb them. }
public IncreaseSkillsGump(PlayerMobile mobile, SoulStone ball, bool first, int page) : base(50, 50) { m_Page = page; m_Ball = ball; m_Points = m_Ball.Points; m_Mobile = mobile; if (first) { int zz = Core.SA ? 58 : Core.ML ? 55 : Core.SE ? 54 : Core.AOS ? 52 : 49; m_StartValue = new double[zz]; m_Page = 0; for (int x = 0; x < zz; x++) { m_StartValue[x] = m_Mobile.Skills[x].Base; } } int maxPage = Core.AOS ? 5 : 4; m_Mobile.CloseGump(typeof(IncreaseSkillsGump)); AddPage(0); AddBackground(0, 0, 350, 440, 0x13BE); AddLabel(10, 7, 2100, "Choose Skills"); if (m_Page > 0) { AddButton(275, 7, 250, 251, 2, GumpButtonType.Reply, 0); // Prev Page } if (m_Page < maxPage) { AddButton(275, 395, 252, 253, 3, GumpButtonType.Reply, 0); // Next Page } AddLabel(160, 7, 2100, "Points Left: " + m_Points.ToString()); // We only need this "if" condition if we want to make them use it all up right now. // if ( m_Points == 0 ) // { AddButton(305, 335, 0xFB7, 0xFB9, 1, GumpButtonType.Reply, 0); // OK button // } // AddImage(170, -10, 0x58A); m_StartPos = m_Page * 10; int z = 0; int max; if (m_Page == maxPage) { max = Core.SA ? 8 : Core.ML ? 5 : Core.SE ? 4 : Core.AOS ? 2 : 9; } else { max = 10; } for (int i = m_StartPos; i < m_StartPos + max; i++) { int y = 20 + (30 * (++z)); m_Skill = m_Mobile.Skills[i]; AddLabel(10, y, 2100, m_Skill.Name.ToString()); AddLabel(170, y, 2100, m_Skill.Base.ToString()); if (CanLowerSkill(m_Skill, i, 1)) { AddButton(220, y, 0x1519, 0x1519, 1000 + i, GumpButtonType.Reply, 0); // Decrease } if (CanRaiseSkill(m_Skill, i, 1)) { AddButton(240, y, 0x151A, 0x151A, 2000 + i, GumpButtonType.Reply, 0); // Increase } //if (CanLowerSkill(m_Skill, i, 5)) // AddButton(200, y - 2, 2229, 2229, 3000 + i, GumpButtonType.Reply, 0); // Decrease by 5 //if (CanRaiseSkill(m_Skill, i, 5)) // AddButton(256, y - 2, 2229, 2229, 4000 + i, GumpButtonType.Reply, 0); // Increase by 5 } }
public IncreaseSkillsGump(PlayerMobile mobile, SoulStone ball, bool first, int page) : base(50, 50) { m_Page = page; m_Ball = ball; m_Points = m_Ball.Points; m_Mobile = mobile; if (first) { int zz = Core.SA ? 58 : Core.ML ? 55 : Core.SE ? 54 : Core.AOS ? 52 : 49; m_StartValue = new double[zz]; m_Page = 0; for (int x = 0; x < zz; x++) m_StartValue[x] = m_Mobile.Skills[x].Base; } int maxPage = Core.AOS ? 5 : 4; m_Mobile.CloseGump(typeof(IncreaseSkillsGump)); AddPage(0); AddBackground(0, 0, 350, 440, 0x13BE); AddLabel(10, 7, 2100, "Choose Skills"); if (m_Page > 0) { AddButton(275, 7, 250, 251, 2, GumpButtonType.Reply, 0); // Prev Page } if (m_Page < maxPage) { AddButton(275, 395, 252, 253, 3, GumpButtonType.Reply, 0); // Next Page } AddLabel(160, 7, 2100, "Points Left: " + m_Points.ToString()); // We only need this "if" condition if we want to make them use it all up right now. // if ( m_Points == 0 ) // { AddButton(305, 335, 0xFB7, 0xFB9, 1, GumpButtonType.Reply, 0); // OK button // } // AddImage(170, -10, 0x58A); m_StartPos = m_Page * 10; int z = 0; int max; if (m_Page == maxPage) max = Core.SA ? 8 : Core.ML ? 5 : Core.SE ? 4 : Core.AOS ? 2 : 9; else max = 10; for (int i = m_StartPos; i < m_StartPos + max; i++) { int y = 20 + (30 * (++z)); m_Skill = m_Mobile.Skills[i]; AddLabel(10, y, 2100, m_Skill.Name.ToString()); AddLabel(170, y, 2100, m_Skill.Base.ToString()); if (CanLowerSkill(m_Skill, i, 1)) AddButton(220, y, 0x1519, 0x1519, 1000 + i, GumpButtonType.Reply, 0); // Decrease if (CanRaiseSkill(m_Skill, i, 1)) AddButton(240, y, 0x151A, 0x151A, 2000 + i, GumpButtonType.Reply, 0); // Increase //if (CanLowerSkill(m_Skill, i, 5)) // AddButton(200, y - 2, 2229, 2229, 3000 + i, GumpButtonType.Reply, 0); // Decrease by 5 //if (CanRaiseSkill(m_Skill, i, 5)) // AddButton(256, y - 2, 2229, 2229, 4000 + i, GumpButtonType.Reply, 0); // Increase by 5 } }
public SelectSkillGump(SoulStone stone, Mobile from) : base(50, 50) { this.m_Stone = stone; this.AddPage(0); this.AddBackground(0, 0, 520, 440, 0x13BE); this.AddImageTiled(10, 10, 500, 20, 0xA40); this.AddImageTiled(10, 40, 500, 360, 0xA40); this.AddImageTiled(10, 410, 500, 20, 0xA40); this.AddAlphaRegion(10, 10, 500, 420); this.AddHtmlLocalized(10, 12, 500, 20, 1061087, 0x7FFF, false, false); // Which skill do you wish to transfer to the Soulstone? this.AddButton(10, 410, 0xFB1, 0xFB2, 0, GumpButtonType.Reply, 0); this.AddHtmlLocalized(45, 412, 450, 20, 1060051, 0x7FFF, false, false); // CANCEL for (int i = 0, n = 0; i < from.Skills.Length; i++) { Skill skill = from.Skills[i]; if (!Core.AOS) { if (skill.SkillName == SkillName.Chivalry || skill.SkillName == SkillName.Necromancy) { continue; } } if (!Core.SE) { if (skill.SkillName == SkillName.Bushido || skill.SkillName == SkillName.Ninjitsu) { continue; } } if (!Core.ML) { if (skill.SkillName == SkillName.Spellweaving) { continue; } } if (!Core.SA) { if (skill.SkillName == SkillName.Imbuing || skill.SkillName == SkillName.Mysticism || skill.SkillName == SkillName.Throwing) { continue; } } if (skill.Base > 0.0) { int p = n % 30; if (p == 0) { int page = n / 30; if (page > 0) { this.AddButton(260, 380, 0xFA5, 0xFA6, 0, GumpButtonType.Page, page + 1); this.AddHtmlLocalized(305, 382, 200, 20, 1011066, 0x7FFF, false, false); // Next page } this.AddPage(page + 1); if (page > 0) { this.AddButton(10, 380, 0xFAE, 0xFAF, 0, GumpButtonType.Page, page); this.AddHtmlLocalized(55, 382, 200, 20, 1011067, 0x7FFF, false, false); // Previous page } } int x = (p % 2 == 0) ? 10 : 260; int y = (p / 2) * 20 + 40; this.AddButton(x, y, 0xFA5, 0xFA6, i + 1, GumpButtonType.Reply, 0); this.AddHtmlLocalized(x + 45, y + 2, 200, 20, AosSkillBonuses.GetLabel(skill.SkillName), 0x7FFF, false, false); n++; } } }
public static Item GetItem(int productNumber) { Item item = null; switch (productNumber) { case 16133: item = new EtherealHorse(); break; case 16134: item = new EtherealLlama(); break; case 16135: item = new EtherealOstard(); break; case 16136: item = new KillBook(); break; case 16137: item = new Bag(); ((Bag)item).DropItem(new SpidersSilk(50000)); ((Bag)item).DropItem(new Nightshade(50000)); ((Bag)item).DropItem(new Bloodmoss(50000)); ((Bag)item).DropItem(new MandrakeRoot(50000)); ((Bag)item).DropItem(new Ginseng(50000)); ((Bag)item).DropItem(new Garlic(50000)); ((Bag)item).DropItem(new BlackPearl(50000)); ((Bag)item).DropItem(new SulfurousAsh(50000)); break; case 16138: item = new SpecialDonateDye(); break; case 16141: item = new Sandals(); item.Name = "magic threads"; item.Hue = 5; item.LootType = LootType.Blessed; break; case 16142: item = new Sandals(); item.Name = "magic threads"; item.Hue = 110; item.LootType = LootType.Blessed; break; case 16139: item = new Sandals(); item.Name = "magic threads"; item.Hue = 90; item.LootType = LootType.Blessed; break; case 16140: item = new Sandals(); item.Name = "magic threads"; item.Hue = 70; item.LootType = LootType.Blessed; break; case 16143: item = new HoodedShroudOfShadows(); item.Name = "a rare agapite shroud"; item.Hue = 2425; item.LootType = LootType.Blessed; break; case 16144: item = new ValoriteDonationBox(); break; case 16145: item = new SilverDonationBox(); break; case 16146: item = new GoldenDonationBox(); break; case 16147: item = new SurvivalPack(); break; case 16148: item = new EtherealSkeletal(); break; case 16149: item = new WeddingDeed(); break; case 16150: item = new DonationSandals(); break; case 16151: item = new DonationBandana(); break; case 16152: item = new MembershipTicket(); ((MembershipTicket)item).MemberShipTime = TimeSpan.FromDays(30); break; case 16153: item = new MembershipTicket(); ((MembershipTicket)item).MemberShipTime = TimeSpan.FromDays(90); break; case 16154: item = new MembershipTicket(); ((MembershipTicket)item).MemberShipTime = TimeSpan.FromDays(180); break; case 16155: item = new MembershipTicket(); ((MembershipTicket)item).MemberShipTime = TimeSpan.FromDays(360); break; case 16156: item = new SexChangeDeed(); item.LootType = LootType.Blessed; break; case 16157: item = new Item(5360); item.Name = "a Character Transfer Ticket"; item.Hue = 1266; item.LootType = LootType.Blessed; break; case 16158: item = new LayerSashDeed(); item.LootType = LootType.Blessed; break; case 16159: item = new EtherealUnicorn(); break; case 16160: item = new AOSHouseDeed7x12(); break; case 16161: item = new AOSHouseDeed12x7(); break; case 16162: item = new AOSHouseDeed15x12(); break; case 16163: item = new AOSHouseDeed12x15(); break; case 16164: item = new AOSHouseDeed18x18(); break; case 16165: item = new DonationSkillBall( 1 ); break; case 16166: item = new DonationSkillBall( 5 ); break; case 16167: item = new DonationSkillBall( 10 ); break; case 16168: item = new DonationSkillBall( 25 ); break; case 16169: item = new DonationSkillBall( 50 ); break; case 16170: item = new Bag(); ((Bag)item).DropItem(new IronIngot(50000)); break; case 16171: item = new Bag(); ((Bag)item).DropItem(new Board(50000)); break; case 16172: item = new PetBondDeed(); break; case 16184: item = new PotionBundle(); break; case 16185: item = null;//new PotionBundleAoS(); break; case 16186: item = new ApagiteDonationBox(); break; case 16187: item = new VeriteDonationBox(); break; case 16188: item = new SerpentCrest(); break; case 16189: item = new IronMaiden(); break; case 16190: item = new Guillotine(); break; case 16191: item = new BigMushroom1(); break; case 16192: item = new BigMushroom2(); break; case 16193: item = new BigMushroom3(); break; case 16194: item = new BigMushroom4(); break; case 16195: item = new LillyPad1(); break; case 16196: item = new LillyPad2(); break; case 16197: item = new LillyPad3(); break; case 16198: item = new DonationDecorArmor1(); break; case 16199: item = new DonationDecorArmor2(); break; case 16200: item = new DonationDecorArmor3(); break; case 16201: item = new DonationDecorArmor4(); break; case 16242: item = new CastleDeed(); item.LootType = LootType.Blessed; break; case 16243: item = new KeepDeed(); item.LootType = LootType.Blessed; break; case 16244: item = new BlackHairDye(); item.LootType = LootType.Blessed; break; case 16245: item = new SpecialDonateDyeBeard(); item.LootType = LootType.Blessed; break; case 16246: item = new KillDeed(); item.LootType = LootType.Blessed; break; case 16247: item = new SkinToneDeed(); item.LootType = LootType.Blessed; break; case 16248: item = new EtherealMountDeed(); item.LootType = LootType.Blessed; break; case 16249: item = new Item(5360); item.Hue = 1266; item.Name = "a house teleporter ticket"; item.LootType = LootType.Blessed; break; case 16250: item = new Item(5360); item.Hue = 1266; item.Name = "a water house spot ticket"; item.LootType = LootType.Blessed; break; case 16251: item = new ElevenBox(); break; case 16252: item = new ElvenRobe(); break; case 16253: item = new RaffleTicket(); break; case 16267: item = new PoisongreenDonationBox(); break; case 16268: item = new SoulStone(); break; case 16269: item = new SoulStoneFragment(); break; case 16270: item = new BoneTable(); break; case 16271: item = new BoneThrone(); break; case 16272: item = new OneMillionBankCheckDeed(); break; case 16273: item = new DarkblueDonationBox(); break; case 16274: ////////item = new xxx(); break; case 16275: item = new ShadowDonationBox(); break; case 16292 : item = new FishTankAddonDeed(); break; case 16294 : item = new AncientBedAddonDeed(); break; case 16296 : item = new HeroKnightShield(); break; case 16297 : item = new StoneSculpture(); break; case 16298 : item = new AncientFruitBowl(); break; case 16299 : item = new AncientRobe(); item.LootType = LootType.Blessed; break; case 16300 : item = new AncientShoes(); item.LootType = LootType.Blessed; break; case 16301 : item = new AncientCoat(); item.LootType = LootType.Blessed; break; case 16302 : item = new GardenDonationBox(); break; case 16303 : item = new DungeonDonationBox(); break; case 16304 : item = new UltimateDecorationDonationBox(); break; case 16305 : item = new ChristmasDonationBox(); break; case 16306 : item = new MetalHueBundleTicket(); break; case 16307 : item = new SpecialHueBundleTicket(); break; case 16308 : item = new SevenGMBag(); break; case 16311 : item = new PokerLowRollerTicket(); break; case 16312 : item = new PokerHighRollerTicket(); break; case 16313 : item = new MoongateLibraryDeed(); break; case 16314 : item = new DisplayCaseAddonDeed(); break; case 16315: item = new TamerDonationBox(); break; case 16316: item = new SeedBox(); break; case 16317: item = new DarkRedDonationBox(); break; case 16318: item = new DarkGreenDonationBox(); break; case 16319: item = new FireDonationBox(); break; case 16320: item = new PinkDonationBox(); break; case 16321: item = new DarkBrownDonationBox(); break; case 16322: item = new OliveDonationBox(); break; case 16323: item = new HiryuTicket(); break; case 16324: ////////item = new xxx(); break; case 16325: item = new ExtremeHueBundleTicket(); break; case 16326: item = new TribalMask(); item.Name = "Mask of the Fire God"; item.Hue = 1359; item.LootType = LootType.Blessed; break; case 16327: item = new TribalMask(); item.Name = "Mask of Velvet Purity"; item.Hue = 1374; item.LootType = LootType.Blessed; break; case 16328: item = new TribalMask(); item.Name = "Mask of the Farseer"; item.Hue = 1267; item.LootType = LootType.Blessed; break; case 16329: item = new TribalMask(); item.Name = "Mask of the Venom King"; item.Hue = 1196; item.LootType = LootType.Blessed; break; case 16330: item = new ShroudOfIllusions(); item.Name = "Shroud of the Morphling Lord"; item.Hue = 1154; item.LootType = LootType.Blessed; break; case 16331: item = new EtherealWarSteed(); break; case 16332: item = new EtherealDragonSteed(); break; // NEW DONATIONS ITEM 20-11-08 --------------------------------------------------------- case 16333: item = new TribalMask(); item.Name = "Mask of the Scoundrel"; item.Hue = 920; item.LootType = LootType.Blessed; break; case 16334: item = new TribalMask(); item.Name = "Mask of the Harrower"; item.Hue = 1194; item.LootType = LootType.Blessed; break; case 16335: item = new TribalMask(); item.Name = "Mask of the Tree Lord"; item.Hue = 1445; item.LootType = LootType.Blessed; break; case 16336: item = new TribalMask(); item.Name = "Mask of the Rich"; item.Hue = 2213; item.LootType = LootType.Blessed; break; case 16337: item = new TribalMask(); item.Name = "Mask of the Unknown"; item.Hue = 2055; item.LootType = LootType.Blessed; break; case 16338: item = new Shoes(); item.Name = "I support the shard"; item.Hue = 1166; item.LootType = LootType.Blessed; break; case 16339: item = new Shoes(); item.Name = "I support the shard"; item.Hue = 1260; item.LootType = LootType.Blessed; break; case 16340: item = new Shoes(); item.Name = "I support the shard"; item.Hue = 1153; item.LootType = LootType.Blessed; break; case 16341: item = new Shoes(); item.Name = "I support the shard"; item.Hue = 1177; item.LootType = LootType.Blessed; break; case 16342: item = new Shoes(); item.Name = "I support the shard"; item.Hue = 1266; item.LootType = LootType.Blessed; break; case 16343: item = new RoyalCloak(); item.LootType = LootType.Blessed; break; case 16344: item = new OrangeDonationBox(); break; //// New items Feb - 2009 //// //// New items Feb - 2009 //// //// New items Feb - 2009 //// case 16345: item = new GoldRing(); item.Name = "a 603-carat diamond"; item.Hue = 2067; item.LootType = LootType.Blessed; break; case 16346: item = new FireGlasses(); item.LootType = LootType.Blessed; break; case 16347: item = new ShroudOfmysterious(); item.LootType = LootType.Blessed; break; case 16348: item = new HoodedShroudOfShadows(); item.Hue = 2055; item.LootType = LootType.Blessed; break; case 16349: item = new HoodedShroudOfShadows(); item.Hue = 2054; item.LootType = LootType.Blessed; break; case 16350: item = new HoodedShroudOfShadows(); item.Hue = 2053; item.LootType = LootType.Blessed; break; case 16354: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 37; item.LootType = LootType.Blessed; break; case 16355: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 9; item.LootType = LootType.Blessed; break; case 16356: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 39; item.LootType = LootType.Blessed; break; case 16357: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 92; item.LootType = LootType.Blessed; break; case 16358: item = new BronzeStatueMaker(); item.LootType = LootType.Blessed; break; case 16359: item = new JadeStatueMaker(); item.LootType = LootType.Blessed; break; case 16360: item = new MarbleStatueMaker(); item.LootType = LootType.Blessed; break; case 16361: item = new GoldStatueMaker(); item.LootType = LootType.Blessed; break; case 16362: item = new BloodstoneStatueMaker(); item.LootType = LootType.Blessed; break; case 16363: item = new AlabasterStatueMaker(); item.LootType = LootType.Blessed; break; case 16364: item = new EtherealKirin(); item.LootType = LootType.Blessed; break; case 16365: item = new GMSafeTradeTicket(); item.LootType = LootType.Blessed; break; case 16366: item = new TheDarkSoldiers(); break; case 16367: item = new TheDarkLords(); break; case 16368: item = new TheDarkKnightsBundle(); break; case 16373: item = new Bag(); ((Bag)item).DropItem(new Bottle(10000)); break; case 16374: item = new Bag(); ((Bag)item).DropItem(new BarbedLeather(5000)); break; case 16375: item = new Bag(); ((Bag)item).DropItem(new SpinedLeather(5000)); break; case 16376: item = new Bag(); ((Bag)item).DropItem(new HornedLeather(5000)); break; case 16377: item = new CheapEvoPointsDeed(); item.LootType = LootType.Blessed; break; case 16378: item = new TitleChangeDeed(); item.LootType = LootType.Blessed; break; case 16379: item = new OceanBlueDonationBundle(); break; case 16390: item = new SkyBlueDonationBundle(); break; case 16381: item = new LayeredSpellbookTicket(); break; case 16391: item = new TeleporterDonationDeed(); break; case 16392: item = new EtherealWarSteed(); item.Name = "a donation ethereal mount"; item.Hue = 1150; item.LootType = LootType.Blessed; break; case 16393: item = new EtherealWarSteed(); item.Name = "a donation ethereal mount"; item.Hue = 1167; item.LootType = LootType.Blessed; break; case 16394: item = new EtherealWarSteed(); item.Name = "a donation ethereal mount"; item.Hue = 38; item.LootType = LootType.Blessed; break; case 16395: item = new EtherealWarSteed(); item.Name = "a donation ethereal mount"; item.Hue = 1160; item.LootType = LootType.Blessed; break; case 16396: item = new EtherealWarSteed(); item.Name = "a donation ethereal mount"; item.Hue = 1161; item.LootType = LootType.Blessed; break; case 16397: item = new EtherealWarSteed(); item.Name = "a donation ethereal mount"; item.Hue = 1140; item.LootType = LootType.Blessed; break; case 16398: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 1167; item.LootType = LootType.Blessed; break; case 16399: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 1160; item.LootType = LootType.Blessed; break; case 16400: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 1161; item.LootType = LootType.Blessed; break; case 16401: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 1172; item.LootType = LootType.Blessed; break; case 16402: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 1165; item.LootType = LootType.Blessed; break; case 16403: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 1140; item.LootType = LootType.Blessed; break; case 16404: item = new DonationDeed(); item.Name = "a supporting deed."; item.Hue = 1161; item.LootType = LootType.Blessed; break; case 16405: item = new CTFDonationTicket(); item.Name = "a ctf ticket."; item.Hue = 1110; item.LootType = LootType.Blessed; break; case 16406: item = new UHSSkinDeed(); item.Name = "a uhs skin deed."; item.Hue = 1110; item.LootType = LootType.Blessed; break; case 16407: item = new BlackBeardHairDye(); item.Name = "a black beard hair dye."; item.Hue = 1175; item.LootType = LootType.Blessed; break; default: item = null; break; } return item; }