public InstitutionGump(Mobile from, InstitutionHandler handler) : base(from, handler) { m_From = from; m_Institution = handler; from.CloseGump(typeof(InstitutionGump)); if (m_Institution != null) { AddPage(0); if (m_From.AccessLevel >= AccessLevel.Chroniqueur) { AddBackground(0, 0, 500, 533, 5054); } else { AddBackground(0, 0, 500, 400, 5054); } if (m_From.AccessLevel >= AccessLevel.Chroniqueur) { AddHtml(x, y + (line * scale), 450, 20, "<h3>" + "Gérance d'institution : " + "</h3>", false, false); AddTextEntry(x + 160, y + (line * scale), 450, 160, 0, 0, m_Institution.Titre); line++; AddHtml(x, y + (line * scale), 450, 20, "<h3>Description : <h3>", false, false); line++; AddTextEntry(x, y + (line * scale), 450, 160, 0, 1, m_Institution.Description); line += 6; AddHtml(x, y + (line * scale), 400, 20, "<h3>Rangs/Titres</h3>", false, false); line++; // Donne un bouton container et un text entry pour chaque rang. N'affiche pas le rang 0 qui est "Aucun titre". int count = m_Institution.RangTitre.Count - 1; for (int i = 1; i <= count; i++) { AddButton(x, y + (line * scale), 4005, 4007, GetButtonID(0, i), GumpButtonType.Reply, 0); AddTextEntry(x + 35, y + (line * scale), 400, 20, 0, i + 1, m_Institution.RangTitre[i]); line++; } line++; AddButton(x, y + (line * scale), 4005, 4007, GetButtonID(1, 0), GumpButtonType.Reply, 0); AddHtml(x + 35, y + (line * scale), 400, 20, "<h3>Augmenter le rang d’un joueur</h3>", false, false); line++; AddButton(x, y + (line * scale), 4005, 4007, GetButtonID(1, 1), GumpButtonType.Reply, 0); AddHtml(x + 35, y + (line * scale), 400, 20, "<h3>Diminuer le rang d’un joueur</h3>", false, false); line++; AddButton(x, y + (line * scale), 4005, 4007, GetButtonID(2, 0), GumpButtonType.Reply, 0); AddHtml(x + 35, y + (line * scale), 400, 20, "<h3>Ajouter un joueur</h3>", false, false); line++; AddButton(x, y + (line * scale), 4005, 4007, GetButtonID(2, 1), GumpButtonType.Reply, 0); AddHtml(x + 35, y + (line * scale), 400, 20, "<h3>Retirer un joueur</h3>", false, false); line++; AddButton(x, y + (line * scale), 4005, 4007, GetButtonID(3, 2), GumpButtonType.Reply, 0); AddHtml(x + 35, y + (line * scale), 400, 20, "<h3>Obtenir des infos sur un joueur</h3>", false, false); line++; AddButton(x, y + (line * scale), 4005, 4007, GetButtonID(2, 2), GumpButtonType.Reply, 0); AddHtml(x + 35, y + (line * scale), 400, 20, "<h3>Consulter la liste des membres</h3>", false, false); line++; } else { AddHtml(x, y + (line * scale), 450, 20, "<h3>" + "Institution : " + m_Institution.Titre + "</h3>", false, false); line++; AddSection(x, y + (line * scale), 450, 120, "<h3>Description<h3>", m_Institution.Description); line += 8; int rank = m_Institution.GetRank(m_From); if (rank == -1) { AddHtml(x + 35, y + (line * scale), 400, 20, "<h3>Vous n'êtes pas membre de l'institution.</h3>", false, false); line++; } else { AddHtml(x + 35, y + (line * scale), 400, 20, "<h3>Votre titre/rang est : " + m_Institution.GetTitre(m_Institution.GetRank(m_From)) + "</h3>", false, false); line++; AddHtml(x + 35, y + (line * scale), 400, 20, "<h3>Votre salaire est de : " + m_Institution.GetSalaire(m_Institution.GetRank(m_From)) + " pièces d'or" + "</h3>", false, false); } line += 2; if (rank == -1) { AddButton(x, y + (line * scale), 4005, 4007, GetButtonID(3, 0), GumpButtonType.Reply, 0); AddHtml(x + 35, y + (line * scale), 400, 20, "<h3>Je veux joindre l'institution</h3>", false, false); line++; } else { AddButton(x, y + (line * scale), 4005, 4007, GetButtonID(3, 1), GumpButtonType.Reply, 0); AddHtml(x + 35, y + (line * scale), 400, 20, "<h3>Je veux quitter l'institution</h3>", false, false); line++; } } } }
protected void AugmenterRang_OnTarget(Mobile from, object targeted) { if (targeted is PlayerMobile) { m_Institution.RankUp((Mobile)targeted); from.SendMessage("Son rang est maintenant : " + m_Institution.GetTitre(m_Institution.GetRank((Mobile)targeted))); } else { from.SendMessage("Vous devez choisir un joueur"); from.BeginTarget(-1, false, TargetFlags.None, new TargetCallback(AugmenterRang_OnTarget)); } }