BringToHome() public méthode

public BringToHome ( ) : void
Résultat void
        public override void OnResponse(NetState state, RelayInfo info)
        {
            if (m_Spawner.Deleted || state.Mobile.AccessLevel < AccessLevel.GameMaster)
            {
                return;
            }

            switch (info.ButtonID)
            {
            case 0:     // Closed
            {
                return;
            }

            case 1:     // Apply
            {
                m_Spawner.SpawnNames = CreateArray(info, state.Mobile);

                break;
            }

            case 2:     // Bring to Home
            {
                m_Spawner.BringToHome();

                break;
            }

            case 3:     // Total Respawn
            {
                m_Spawner.Respawn();

                break;
            }

            default:
            {
                int buttonID = info.ButtonID - 4;
                int index    = buttonID / 2;
                int type     = buttonID % 2;

                TextRelay entry = info.GetTextEntry(index);

                if (entry != null && entry.Text.Length > 0)
                {
                    if (type == 0)         // Spawn creature
                    {
                        m_Spawner.Spawn(entry.Text);
                    }
                    else         // Remove creatures
                    {
                        m_Spawner.RemoveSpawned(entry.Text);
                    }

                    m_Spawner.SpawnNames = CreateArray(info, state.Mobile);
                }

                break;
            }
            }

            state.Mobile.SendGump(new SpawnerGump(m_Spawner));
        }
Exemple #2
0
        public override void OnResponse(NetState state, RelayInfo info)
        {
            if (m_Spawner.Deleted)
            {
                return;
            }

            Mobile from = state.Mobile;

            int val = info.ButtonID - 1;

            if (val < 0)
            {
                return;
            }

            int type  = val % 10;
            int index = val / 10;

            switch (type)
            {
            case 0:                     //Cancel
                return;

            case 1:
            {
                switch (index)
                {
                case 0:
                {
                    if (m_Spawner.Entries != null && m_Page > 0)
                    {
                        m_Page--;
                        m_Entry = null;
                    }
                    break;
                }

                case 1:
                {
                    if (m_Spawner.Entries != null && (m_Page + 1) * 13 <= m_Spawner.Entries.Count)
                    {
                        m_Page++;
                        m_Entry = null;
                    }
                    break;
                }

                case 2:                                 //Okay
                {
                    CreateArray(info, state.Mobile, m_Spawner);
                    return;
                }

                case 3:
                {
                    m_Spawner.BringToHome();
                    break;
                }

                case 4:                                 // Complete respawn
                {
                    m_Spawner.Respawn();
                    break;
                }

                case 5:
                {
                    CreateArray(info, state.Mobile, m_Spawner);
                    break;
                }
                }
                break;
            }

            case 2:
            {
                int entryindex = (index / 2) + (m_Page * 13);
                int buttontype = index % 2;

                if (entryindex >= 0 && entryindex < m_Spawner.Entries.Count)
                {
                    SpawnerEntry entry = m_Spawner.Entries[entryindex];
                    if (buttontype == 0)                               // Spawn creature
                    {
                        if (m_Entry != null && m_Entry == entry)
                        {
                            m_Entry = null;
                        }
                        else
                        {
                            m_Entry = entry;
                        }
                    }
                    else                             // Remove creatures
                    {
                        m_Spawner.RemoveSpawn(entryindex);
                    }
                }

                CreateArray(info, state.Mobile, m_Spawner);
                break;
            }
            }

            if (m_Entry != null && m_Spawner.Entries.Contains(m_Entry))
            {
                state.Mobile.SendGump(new SpawnerGump(m_Spawner, m_Entry, m_Page));
            }
            else
            {
                state.Mobile.SendGump(new SpawnerGump(m_Spawner, null, m_Page));
            }
        }
Exemple #3
0
        public override void OnResponse(NetState state, RelayInfo info)
        {
            if (m_Spawner.Deleted)
            {
                return;
            }

            switch (info.ButtonID)
            {
            case 0:                     // Closed
            {
                break;
            }

            case 1:                     // Okay
            {
                m_Spawner.CreaturesName = CreateArray(info, state.Mobile);

                break;
            }

            case 2:                     // Bring everything home
            {
                m_Spawner.BringToHome();

                break;
            }

            case 3:                     // Complete respawn
            {
                m_Spawner.Respawn();

                break;
            }

            default:
            {
                int buttonID = info.ButtonID - 4;
                int index    = buttonID / 2;
                int type     = buttonID % 2;

                TextRelay entry = info.GetTextEntry(index);

                if (entry != null && entry.Text.Length > 0)
                {
                    if (type == 0)                                       // Spawn creature
                    {
                        m_Spawner.Spawn(entry.Text);
                    }
                    else                                     // Remove creatures
                    {
                        m_Spawner.RemoveCreatures(entry.Text);
                    }

                    m_Spawner.CreaturesName = CreateArray(info, state.Mobile);
                }

                break;
            }
            }
        }
        private static void MakeSpawner( string[] types, int x, int y, Map map )
        {
            if ( types.Length == 0 )
                return;

            int z = GetSpawnerZ( x, y, map );

            ClearSpawners( x, y, z, map );

            for ( int i = 0; i < types.Length; ++i )
            {
                bool isGuildmaster = ( types[i].EndsWith( "Guildmaster" ) );

                Spawner sp = new Spawner( types[i] );

                if ( isGuildmaster )
                    sp.Count = 1;
                else
                    sp.Count = NPCCount;

                sp.MinDelay = MinTime;
                sp.MaxDelay = MaxTime;
                sp.Team = Team;
                sp.HomeRange = HomeRange;

                sp.MoveToWorld( new Point3D( x, y, z ), map );

                if ( TotalRespawn )
                {
                    sp.Respawn();
                    sp.BringToHome();
                }

                ++m_Count;
            }
        }
Exemple #5
0
        public override void OnResponse(NetState state, RelayInfo info)
        {
            if (m_Spawner.Deleted || state.Mobile.AccessLevel < AccessLevel.GameMaster)
            {
                return;
            }

            switch (info.ButtonID)
            {
            case 0:     // Closed
            {
                return;
            }

            case 1:     // Apply
            {
                UpdateSpawnObjects(info, state.Mobile);

                break;
            }

            case 2:     // Bring to Home
            {
                m_Spawner.BringToHome();

                break;
            }

            case 3:     // Total Respawn
            {
                m_Spawner.Respawn();

                break;
            }

            case 1000:
            {
                if (m_Spawner.Group)
                {
                    m_Spawner.Group = false;
                }
                else
                {
                    m_Spawner.Group = true;
                }
                break;
            }

            case 1025:
            {
                state.Mobile.SendGump(new PropertiesGump(state.Mobile, m_Spawner));
                break;
            }

            case 1500:
            {
                if (m_Spawner.Running)
                {
                    m_Spawner.Running = false;
                }
                else
                {
                    m_Spawner.Running = true;
                }
                break;
            }

            case 1750:
            {
                m_Spawner.RemoveSpawned();
                break;
            }

            default:
            {
                int buttonID = info.ButtonID - 4;
                int index    = buttonID / 2;
                int type     = buttonID % 2;

                TextRelay entry = info.GetTextEntry(index);

                if (entry != null && entry.Text.Length > 0)
                {
                    UpdateSpawnObjects(info, state.Mobile);

                    if (type == 0)         // Spawn creature
                    {
                        m_Spawner.Spawn(index);
                    }
                    else         // Remove creatures
                    {
                        m_Spawner.RemoveSpawned(index);
                    }
                }

                break;
            }
            }

            state.Mobile.SendGump(new SpawnerGump(m_Spawner));
        }