Здравствуйте, гость ( Вход | Регистрация )

> Надо помощь в RunUO!
Dragon Killer
сообщение 12.5.2015, 15:18
Сообщение #1


***

Novice
Сообщений: 63
Регистрация: 4.4.2014
Группа: Пользователи
Наличность: 0
Пользователь №: 16.748
Возраст: 29



И так пытаюсь разобраться в файлах RanUO сам не скриптер но как по мне ранка этот как лего можно склепать что захочешь, ну по крайней мере я так надеюсь ... FAQ толкового нет ... Хочу вот разобраться что к чему , настроить шард под свои нужды что то добавить что то убрать ....

Помогите разобраться с файлами что за что отвечает файл ExpansionInfo.cs и давайте его разложим его по полочкам за что отвечают флаги и ну вообщем кую функцию они выполняют что включают и отключают хочу знать все ... прошу не ленится а реально описать файл ..... и помочь разобраться...

Код

using System;

namespace Server
{
    public enum Expansion
    {
        None,
        T2A,
        UOR,
        UOTD,
        LBR,        
        AOS,
        SE,
        ML,
        SA,
        HS
    }

    [Flags]
    public enum ClientFlags
    {
        None    = 0x00000000,
        Felucca    = 0x00000001,
        Trammel    = 0x00000002,
        Ilshenar= 0x00000004,
        Malas    = 0x00000008,
        Tokuno    = 0x00000010,
        TerMur    = 0x00000020,
        Unk1    = 0x00000040,
        Unk2    = 0x00000080,
        UOTD    = 0x00000100
    }

    [Flags]
    public enum FeatureFlags
    {
        None                = 0x00000000,
        T2A                    = 0x00000001,
        UOR                    = 0x00000002,
        UOTD                = 0x00000004,
        LBR                    = 0x00000008,
        AOS                    = 0x00000010,
        SixthCharacterSlot    = 0x00000020,
        SE                    = 0x00000040,
        ML                    = 0x00000080,
        EigthAge            = 0x00000100,
        NinthAge            = 0x00000200, /* Crystal/Shadow Custom House Tiles */
        TenthAge            = 0x00000400,
        IncreasedStorage    = 0x00000800, /* Increased Housing/Bank Storage */
        SeventhCharacterSlot= 0x00001000,
        RoleplayFaces        = 0x00002000,
        TrialAccount        = 0x00004000,
        LiveAccount            = 0x00008000,
        SA                    = 0x00010000,
        HS                    = 0x00020000,
        Gothic                = 0x00040000,
        Rustic                = 0x00080000,

        ExpansionNone    = None,
        ExpansionT2A    = T2A,
        ExpansionUOR    = ExpansionT2A    | UOR,
        ExpansionUOTD    = ExpansionUOR    | UOTD,
        ExpansionLBR    = ExpansionUOTD    | LBR,
        ExpansionAOS    = ExpansionLBR    | AOS    | LiveAccount,
        ExpansionSE        = ExpansionAOS    | SE,
        ExpansionML        = ExpansionSE    | ML    | NinthAge,
        ExpansionSA        = ExpansionML    | SA    | Gothic    | Rustic,
        ExpansionHS        = ExpansionSA    | HS
    }

    [Flags]
    public enum    CharacterListFlags
    {
        None                    = 0x00000000,
        Unk1                    = 0x00000001,
        OverwriteConfigButton    = 0x00000002,
        OneCharacterSlot        = 0x00000004,
        ContextMenus            = 0x00000008,
        SlotLimit                = 0x00000010,
        AOS                        = 0x00000020,
        SixthCharacterSlot        = 0x00000040,
        SE                        = 0x00000080,
        ML                        = 0x00000100,
        Unk2                    = 0x00000200,
        UO3DClientType            = 0x00000400,
        Unk3                    = 0x00000800,
        SeventhCharacterSlot    = 0x00001000,
        Unk4                    = 0x00002000,
        NewMovementSystem        = 0x00004000,
        NewFeluccaAreas            = 0x00008000,

        ExpansionNone    = ContextMenus, //
        ExpansionT2A    = ContextMenus, //
        ExpansionUOR    = ContextMenus, // None
        ExpansionUOTD    = ContextMenus, //
        ExpansionLBR    = ContextMenus, //
        ExpansionAOS    = ContextMenus    | AOS,
        ExpansionSE        = ExpansionAOS    | SE,
        ExpansionML        = ExpansionSE    | ML,
        ExpansionSA        = ExpansionML,
        ExpansionHS        = ExpansionSA
    }

    public class ExpansionInfo
    {
        public static ExpansionInfo[] Table { get { return m_Table; } }
        private static ExpansionInfo[] m_Table = new ExpansionInfo[]
            {
                new ExpansionInfo( 0, "None",                    ClientFlags.None,
                FeatureFlags.ExpansionNone,    CharacterListFlags.ExpansionNone,    0x0000 ),
                new ExpansionInfo( 1, "The Second Age",            ClientFlags.Felucca,
            FeatureFlags.ExpansionT2A,    CharacterListFlags.ExpansionT2A,    0x0000 ),
                new ExpansionInfo( 2, "Renaissance",            ClientFlags.Trammel,
            FeatureFlags.ExpansionUOR,    CharacterListFlags.ExpansionUOR,    0x0000 ),
                new ExpansionInfo( 3, "Third Dawn",                ClientFlags.Ilshenar,
            FeatureFlags.ExpansionUOTD,    CharacterListFlags.ExpansionUOTD,    0x0000 ),
                new ExpansionInfo( 4, "Blackthorn's Revenge",    ClientFlags.Ilshenar,
            FeatureFlags.ExpansionLBR,    CharacterListFlags.ExpansionLBR,    0x0000 ),
                new ExpansionInfo( 5, "Age of Shadows",            ClientFlags.Malas,
                FeatureFlags.ExpansionAOS,    CharacterListFlags.ExpansionAOS,    0x0000 ),
                new ExpansionInfo( 6, "Samurai Empire",            ClientFlags.Tokuno,
                FeatureFlags.ExpansionSE,    CharacterListFlags.ExpansionSE,        0x00C0 ), // 0x20 | 0x80
                new ExpansionInfo( 7, "Mondain's Legacy",        new ClientVersion( "5.0.0a" ),
    FeatureFlags.ExpansionML,    CharacterListFlags.ExpansionML,        0x02C0 ), // 0x20 | 0x80 | 0x200
                new ExpansionInfo( 8, "Stygian Abyss",            ClientFlags.TerMur,
                FeatureFlags.ExpansionSA,    CharacterListFlags.ExpansionSA,
        0xD02C0 ), // 0x20 | 0x80 | 0x200 | 0x10000 | 0x40000 | 0x80000
                new ExpansionInfo( 9, "High Seas",                new ClientVersion( "7.0.9.0" ),
    FeatureFlags.ExpansionHS,
    CharacterListFlags.ExpansionHS,        0xD02C0 ) // 0x20 | 0x80 | 0x200 | 0x10000 | 0x40000 | 0x80000
            };

        private string m_Name;
        private int m_ID, m_CustomHousingFlag;

        private ClientFlags m_ClientFlags;
        private FeatureFlags m_SupportedFeatures;
        private CharacterListFlags m_CharListFlags;

        private ClientVersion m_RequiredClient;    // Used as an alternative to the flags

        public string Name{ get{ return m_Name; } }
        public int ID{ get{ return m_ID; } }
        public ClientFlags ClientFlags{ get{ return m_ClientFlags; } }
        public FeatureFlags SupportedFeatures{ get{ return m_SupportedFeatures; } }
        public CharacterListFlags CharacterListFlags { get { return m_CharListFlags; } }
        public int CustomHousingFlag { get{ return m_CustomHousingFlag; } }
        public ClientVersion RequiredClient { get { return m_RequiredClient; } }

        public ExpansionInfo( int id, string name, ClientFlags clientFlags, FeatureFlags supportedFeatures, CharacterListFlags charListFlags, int customHousingFlag )
        {
            m_Name = name;
            m_ID = id;
            m_ClientFlags = clientFlags;
            m_SupportedFeatures = supportedFeatures;
            m_CharListFlags = charListFlags;
            m_CustomHousingFlag = customHousingFlag;
        }

        public ExpansionInfo( int id, string name, ClientVersion requiredClient, FeatureFlags supportedFeatures, CharacterListFlags charListFlags, int customHousingFlag )
        {
            m_Name = name;
            m_ID = id;
            m_SupportedFeatures = supportedFeatures;
            m_CharListFlags = charListFlags;
            m_CustomHousingFlag = customHousingFlag;
            m_RequiredClient = requiredClient;
        }

        public static ExpansionInfo GetInfo( Expansion ex )
        {
            return GetInfo( (int)ex );
        }

        public static ExpansionInfo GetInfo( int ex )
        {
            int v = (int)ex;

            if( v < 0 || v >= m_Table.Length )
                v = 0;

            return m_Table[v];
        }

        public static ExpansionInfo CurrentExpansion { get { return GetInfo( Core.Expansion ); } }

        public override string ToString()
        {
            return m_Name;
        }
    }
}


Сообщение отредактировал Juzzver - 12.5.2015, 20:56
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Сообщений в этой теме
Dragon Killer   Надо помощь в RunUO!   12.5.2015, 15:18
Soteric   Здесь ничего не настраивается. Это скорее шаблон/и...   12.5.2015, 16:03
Aimed   Я довольно плотно пишу на ранке уже 2 года, ниразу...   12.5.2015, 16:57
Dragon Killer   типо сфер ... но и в направлении оси хочу откзатся...   12.5.2015, 17:18
Aimed   типо сфер ... но и в направлении оси хочу откзатс...   12.5.2015, 17:38
Soteric   В Scripts\Data\CurrentExpansion.cs priva...   12.5.2015, 17:37
Dragon Killer   там язык какой то рагульный ,я когда в ранку смотр...   12.5.2015, 17:41
Aimed   там язык какой то рагульный ,я когда в ранку смот...   12.5.2015, 18:05
Dragon Killer   Soteric это сработало но уникорн стал как обычн...   12.5.2015, 18:04
Aimed   это сработало но уникорн стал как обычная белая л...   12.5.2015, 18:12
Dragon Killer   ну с каждым днем ноли добавляются типо 0+0 ..... д...   12.5.2015, 18:08
Soteric   А уникорны точно были в Pre-AOS?   12.5.2015, 18:28
Aimed   А уникорны точно были в Pre-AOS? Не было их.   12.5.2015, 18:30
Juzzver   Это касается всей папки Server в целом, куда лезт...   12.5.2015, 18:32
Dragon Killer   абалдеть нема слов сам бог ранки ответил ) спасиб...   12.5.2015, 18:41


Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 16.7.2025, 14:49
Designed by Nickostyle