IsAlly() public method

public IsAlly ( Guild g ) : bool
g Guild
return bool
Ejemplo n.º 1
0
        public DiplomacyMiscGump( Mobile leader, Guild target )
            : base(10, 40)
        {
            m_Mobile = leader;
            t_Guild = target;
            m_Guild = m_Mobile.Guild as Guild;

            /*0*/
            Intern( "Unknown" );
            /*1*/
            Intern( "" );
            /*2*/
            Intern( "" );
            /*3*/
            Intern( "0/0" );
            /*4*/
            Intern( "0/0" );
            /*5*/
            Intern( "00:00" );
            /*6*/
            Intern( target.Name );
            /*7*/
            Intern( "<basefont color=#black>" + t_Guild.AllianceName + "</basefont>" );
            /*8*/
            Intern( target.Abbreviation );
            /*9*/
            Intern( "<basefont color=#black>0/0</basefont>" );
            /*10*/
            Intern( "<basefont color=#black>00:00</basefont>" );
            /*11*/
            Intern( "<basefont color=#black>0/0</basefont>" );

            AddPage( 0 );

            AddBackground( 0, 0, 520, 335, 0x242C );

            AddHtmlLocalized( 20, 15, 480, 26, 1062975, false, false ); // <div align=center><i>Guild Relationship</i></div>
            AddImageTiled( 20, 40, 480, 2, 0x2711 );

            AddHtmlLocalized( 20, 50, 120, 26, 1062954, true, false ); // <i>Guild Name</i>
            AddHtmlIntern( 150, 53, 360, 26, 6, false, false );

            AddHtmlLocalized( 20, 80, 120, 26, 1063025, true, false ); // <i>Alliance</i>
            AddHtmlIntern( 150, 83, 360, 26, 7, false, false );

            AddHtmlLocalized( 20, 110, 120, 26, 1063139, true, false ); // <i>Abbreviation</i>
            AddHtmlIntern( 150, 113, 120, 26, 8, false, false );

            AddHtmlLocalized( 280, 110, 120, 26, 1062966, true, false ); // <i>Your Kills</i>
            AddHtmlIntern( 410, 113, 120, 26, 9, false, false );

            AddHtmlLocalized( 20, 140, 120, 26, 1062968, true, false ); // <i>Time Remaining</i>
            AddHtmlIntern( 150, 143, 120, 26, 10, false, false );

            AddHtmlLocalized( 280, 140, 120, 26, 1062967, true, false ); // <i>Their Kills</i>
            AddHtmlIntern( 410, 143, 120, 26, 11, false, false );

            AddImageTiled( 20, 172, 480, 2, 0x2711 );

            AddBackground( 275, 290, 225, 26, 0x2486 );
            AddButton( 280, 295, 0x845, 0x846, 0, GumpButtonType.Reply, 0 );
            AddHtmlLocalized( 305, 293, 185, 26, 3000091, false, false ); // Cancel

            AddBackground( 20, 290, 225, 26, 0x2486 );
            AddButton( 25, 295, 0x845, 0x846, 400, GumpButtonType.Reply, 0 );
            AddHtmlLocalized( 50, 293, 185, 26, 1062989, false, false ); // Declare War!

            AddBackground( 20, 260, 225, 26, 0x2486 );
            AddButton( 25, 265, 0x845, 0x846, 305, GumpButtonType.Reply, 0 ); // Request Alliance
            AddHtmlLocalized( 50, 263, 185, 26, 1062990, false, false );

            if ( m_Guild.IsWar( t_Guild ) )
                AddHtmlLocalized( 20, 180, 480, 30, 1062965, true, false ); // war
            else if ( m_Guild.IsAlly( t_Guild ) )
                AddHtmlLocalized( 20, 180, 480, 30, 1062970, true, false ); // allied
            else
                AddHtmlLocalized( 20, 180, 480, 30, 1062973, true, false ); // peace

            AddImageTiled( 20, 245, 480, 2, 0x2711 );
        }
Ejemplo n.º 2
0
		public static double GetPercentageOfGuildedHousesInArea(Point3D location, Map map, int radius, Guild guild, bool bIgnoreAlliedHouses)
		{
			double guildPercentage = 0.0;

			if (guild == null) return guildPercentage; //doublecheck this - return 0 if we're not guilded
			if (location == Point3D.Zero) return guildPercentage; //might as well check that we're not the default point

			try //safety
			{
				int x = location.X;
				int y = location.Y;
				int z = location.Z;

				int x_start = x - radius;
				int y_start = y - radius;
				int x_end = x + radius;
				int y_end = y + radius;

				Rectangle2D rect = new Rectangle2D(x_start, y_start, TownshipStone.INITIAL_RADIUS * 2, TownshipStone.INITIAL_RADIUS * 2);
				List<BaseHouse> houseList = TownshipDeed.GetHousesInRect(rect, map);

				int guildCount = 0;
				int allyCount = 0;
				int otherCount = 0;

				int siegetentCount = 0;

				int countedHouses = 0;

				foreach (BaseHouse h in houseList)
				{
					if (h != null && h.Owner != null)
					{
						countedHouses++;

						Guild houseGuild = h.Owner.Guild as Guilds.Guild;

						if (h is SiegeTent)
						{
							siegetentCount++;
						}
						else
						{
							if (houseGuild == null)
							{
								otherCount++;
							}
							else if (houseGuild == guild)
							{
								guildCount++;
							}
							else if (guild.IsAlly(houseGuild))
							{
								allyCount++;
							}
							else
							{
								otherCount++;
							}
						}
					}
				}

				guildPercentage = ((double)guildCount) / ((double)(countedHouses - allyCount - siegetentCount));
			}
			catch (Exception ex) { EventSink.InvokeLogException(new LogExceptionEventArgs(ex)); }
			return guildPercentage;
		}
Ejemplo n.º 3
0
        public DiplomacyGump( Mobile from, Guild guild, ArrayList list, int Sort_Type, int page, string search )
            : base(10, 10)
        {
            m_Mobile = from;
            m_Guild = guild;
            m_Page = page;
            m_Search = search;
            m_SortType = Sort_Type;

            if ( Sort_Type >= 10 )
            {
                updown = true;
                Sort_Type = Sort_Type - 10;
            }
            else
            {
                updown = false;
            }

            AddPage( 0 );

            AddBackground( 0, 0, 600, 440, 0x24AE );

            AddBackground( 66, 40, 150, 26, 0x2486 );
            AddButton( 71, 45, 0x845, 0x846, 100, GumpButtonType.Reply, 0 );
            AddHtmlLocalized( 96, 43, 110, 26, 1063014, false, false );

            AddBackground( 236, 40, 150, 26, 0x2486 );
            AddButton( 241, 45, 0x845, 0x846, 110, GumpButtonType.Reply, 0 );
            AddHtmlLocalized( 266, 43, 110, 26, 1062974, false, false );

            AddBackground( 401, 40, 150, 26, 0x2486 );
            AddButton( 406, 45, 0x845, 0x846, 120, GumpButtonType.Reply, 0 );
            AddHtmlLocalized( 431, 43, 110, 26, 1062978, 0xF, false, false );

            AddButton( 95, 80, 0x15E1, 0x15E5, 800, ( ( page + 1 ) * 8 ) >= list.Count ? GumpButtonType.Page : GumpButtonType.Reply, 0 ); // Next Page
            AddButton( 65, 80, 0x15E3, 0x15E7, 801, page == 0 ? GumpButtonType.Page : GumpButtonType.Reply, 0 ); // Previous Page

            AddBackground( 130, 75, 385, 30, 0xBB8 );
            AddTextEntry( 135, 80, 375, 30, 0x481, 3535, search );
            AddButton( 520, 75, 0x867, 0x868, 750, GumpButtonType.Reply, 0 );

            AddImageTiled( 65, 110, 290, 26, 0xA40 );
            AddImageTiled( 67, 112, 286, 22, 0xBBC );
            AddHtmlLocalized( 70, 113, 280, 20, 1062954, false, false );

            if ( Sort_Type == 0 ) // Sort by Name
            {
                if ( updown )
                    AddButton( 339, 117, 0x983, 0x984, 401, GumpButtonType.Reply, 0 );
                else
                    AddButton( 339, 117, 0x985, 0x986, 400, GumpButtonType.Reply, 0 );
            }
            else
            {
                AddButton( 339, 117, 0x2716, 0x2716, 400, GumpButtonType.Reply, 0 );
            }

            AddImageTiled( 357, 110, 60, 26, 0xA40 );
            AddImageTiled( 359, 112, 56, 22, 0xBBC );
            AddHtmlLocalized( 362, 113, 50, 20, 1062957, false, false );

            if ( Sort_Type == 1 ) // Sort by Abbreviation
            {
                if ( updown )
                    AddButton( 401, 117, 0x983, 0x984, 403, GumpButtonType.Reply, 0 );
                else
                    AddButton( 401, 117, 0x985, 0x986, 402, GumpButtonType.Reply, 0 );
            }
            else
            {
                AddButton( 401, 117, 0x2716, 0x2716, 402, GumpButtonType.Reply, 0 );
            }

            AddImageTiled( 419, 110, 130, 26, 0xA40 );
            AddImageTiled( 421, 112, 126, 22, 0xBBC );
            AddHtmlLocalized( 424, 113, 120, 20, 1062958, false, false );

            if ( Sort_Type == 2 ) // Sort by Status
            {
                if ( updown )
                    AddButton( 534, 117, 0x983, 0x984, 405, GumpButtonType.Reply, 0 );
                else
                    AddButton( 534, 117, 0x985, 0x986, 404, GumpButtonType.Reply, 0 );
            }
            else
            {
                AddButton( 534, 117, 0x2716, 0x2716, 404, GumpButtonType.Reply, 0 );
            }

            m_List = new ArrayList( list.Count );
            m_List = list;

            switch ( Sort_Type )
            {
                case 0:
                    {
                        m_List.Sort( new ListNameSorter( updown ) );
                        break;
                    }
                case 1:
                    {
                        m_List.Sort( new ListAbbrSorter( updown ) );
                        break;
                    }
                case 2:
                    {
                        m_SortWarList = new ArrayList();
                        m_SortAllyList = new ArrayList();

                        int j = 0;

                        while ( j < m_List.Count )
                        {
                            if ( ( (Guild) m_List[j] ).IsWar( m_Guild ) )
                            {
                                m_SortWarList.Add( m_List[j] );
                                m_List.Remove( m_List[j] );
                            }
                            else
                            {
                                j++;
                            }
                        }

                        j = 0;

                        while ( j < m_List.Count )
                        {
                            if ( ( (Guild) m_List[j] ).IsAlly( m_Guild ) )
                            {
                                m_SortAllyList.Add( m_List[j] );
                                m_List.Remove( m_List[j] );
                            }
                            else
                            {
                                j++;
                            }
                        }

                        m_SortAllyList.Sort( new ListNameSorter( updown ) );
                        m_SortWarList.Sort( new ListNameSorter( updown ) );
                        m_List.Sort( new ListNameSorter( updown ) );

                        for ( j = 0; j < m_SortAllyList.Count; j++ )
                            m_SortWarList.Add( m_SortAllyList[j] );

                        for ( j = 0; j < m_List.Count; j++ )
                            m_SortWarList.Add( m_List[j] );

                        m_List = m_SortWarList;
                        break;
                    }
                case 3:
                    {
                        m_List.Sort( new ListRelationshipSorter( updown ) );
                        break;
                    }
                case 4:
                    {
                        m_List.Sort( new ListAwaitingSorter( updown ) );
                        break;
                    }
            }

            for ( int i = ( m_Page * 8 ), n = 0; i < list.Count && i < 8 + ( m_Page * 8 ); ++i, ++n )
            {
                Guild g = (Guild) list[i] as Guild;

                if ( m_Guild.WarInvitations.Contains( g ) || m_Guild.AllyInvitations.Contains( g ) || g.AllyDeclarations.Contains( m_Guild ) || g.WarDeclarations.Contains( m_Guild ) || g.WarInvitations.Contains( m_Guild ) || g.AllyInvitations.Contains( m_Guild ) || m_Guild.AllyDeclarations.Contains( g ) || m_Guild.WarDeclarations.Contains( g ) )
                    AddButton( 36, 143 + ( n * 28 ), 0x8AF, 0x8AF, i + 1000, GumpButtonType.Reply, 0 );
                else
                    AddButton( 40, 143 + ( n * 28 ), 0x4B9, 0x4BA, i + 1000, GumpButtonType.Reply, 0 );

                AddImageTiled( 65, 138 + ( n * 28 ), 290, 26, 0xA40 );
                AddImageTiled( 67, 140 + ( n * 28 ), 286, 22, 0xBBC );

                if ( g.Name == m_Guild.Name )
                    AddHtml( 70, 141 + ( n * 28 ), 280, 20, "<basefont color=#006600>" + g.Name + "</basefont>", false, false );
                else
                    AddHtml( 70, 141 + ( n * 28 ), 280, 20, g.Name, false, false );

                AddImageTiled( 357, 138 + ( n * 28 ), 60, 26, 0xA40 );
                AddImageTiled( 359, 140 + ( n * 28 ), 56, 22, 0xBBC );

                AddHtml( 362, 141 + ( n * 28 ), 50, 20, g.Abbreviation, false, false );

                AddImageTiled( 419, 138 + ( n * 28 ), 130, 26, 0xA40 );
                AddImageTiled( 421, 140 + ( n * 28 ), 126, 22, 0xBBC );

                if ( g == m_Guild )
                {
                    if ( g.Allies.Count > 0 )
                    {
                        if ( g.AllianceLeader )
                            AddHtmlLocalized( 424, 141 + ( n * 28 ), 120, 20, 1063237, false, false ); // Alliance Leader
                        else
                            AddHtmlLocalized( 424, 141 + ( n * 28 ), 120, 20, 1062964, false, false ); // Ally
                    }
                    else
                    {
                        AddHtmlLocalized( 424, 141 + ( n * 28 ), 120, 20, 3000085, false, false ); // Peace
                    }
                }
                if ( m_Guild.IsWar( g ) )
                {
                    AddHtmlLocalized( 424, 141 + ( n * 28 ), 120, 20, 3000086, false, false ); // War
                }
                else if ( m_Guild.IsAlly( g ) )
                {
                    if ( g.AllianceLeader )
                        AddHtmlLocalized( 424, 141 + ( n * 28 ), 120, 20, 1063237, false, false ); // Alliance Leader
                    else
                        AddHtmlLocalized( 424, 141 + ( n * 28 ), 120, 20, 1062964, false, false ); // Ally
                }
                else if ( g != m_Guild )
                {
                    AddHtmlLocalized( 424, 141 + ( n * 28 ), 120, 20, 3000085, false, false ); // Peace
                }

                if ( i == m_List.Count - 1 && m_Guild.Allies.Count + 1 >= m_List.Count )
                    AddHtml( 66, 204 + ( ( n - 1 ) * 28 ), 300, 26, "<basefont color=#000066>" + g.AllianceName + "</basefont>", false, false );
                else
                    AddKRLabel( 0, 0, 0, 0, -1, false, false );
            }

            if ( Sort_Type == 3 )
                AddHtmlLocalized( 66, 377, 280, 26, 1063138, 0xF, false, false );
            else if ( Sort_Type == 4 )
                AddHtmlLocalized( 66, 377, 280, 26, 1063137, 0xF, false, false );
            else
                AddHtmlLocalized( 66, 377, 280, 26, 1063136, 0xF, false, false );

            AddBackground( 350, 372, 200, 26, 0x2486 );
            AddButton( 355, 377, 0x845, 0x846, 975, GumpButtonType.Reply, 0 );
            AddHtmlLocalized( 380, 375, 160, 26, 1063083, false, false ); // Advanced Search
            AddKRHtmlLocalized( 0, 0, 0, 0, -2, false, false );
        }