internal MultiplayerObjectTypeList(EngineLimits limits)
 {
     Types       = new List <MultiplayerObjectType>(limits.MultiplayerObjectTypes.MaxCount);
     Weapons     = new Dictionary <string, MultiplayerObjectMapping>();
     Vehicles    = new Dictionary <string, MultiplayerObjectMapping>();
     Grenades    = new Dictionary <string, MultiplayerObjectMapping>();
     Equipment   = new Dictionary <string, MultiplayerObjectMapping>();
     WeaponSets  = new List <MultiplayerObjectSetEntry>();
     VehicleSets = new List <MultiplayerObjectSetEntry>();
 }
Beispiel #2
0
        internal MegaloStaticDatabase(Engine.EngineBuildHandle forBuild, EngineLimits limits)
        {
            EngineBuild = forBuild;

            mLimits = limits;

            MultiplayerEffects = new List <MultiplayerEffect>();
            ObjectTypeList     = new MultiplayerObjectTypeList(limits);
            CustomApps         = new List <UnitCustomApp>();
            OrdnanceList       = new GameGlobalsOrdnanceList(limits);
            Medals             = new List <GameMedal>(limits.GameMedals.MaxCount);
            Incidents          = new List <GameIncident>(limits.GameIncidentTypes.MaxCount);
            HudWidgetIcons     = new List <MegaloHudWidgetIcon>(limits.MegaloHudWidgetIcons.MaxCount);
            GameEngineIcons    = new List <GameEngineIcon>(limits.GameEngineIcons.MaxCount);
            Sounds             = new List <MegaloEngineSound>(limits.MegaloEngineSounds.MaxCount);
            Names = new List <MegaloEngineStringId>(limits.MegaloStringIds.MaxCount);
        }
Beispiel #3
0
        public MegaloScriptDatabase(Engine.EngineBuildHandle forBuild)
        {
            EngineBuild = forBuild;

            Limits = new EngineLimits();

            SingleEncodings = new List <SingleEncoding>();
            Enums           = new List <MegaloScriptEnum>();
            ValueTypeNames  = new List <string>();
            ValueTypes      = new List <MegaloScriptValueType>();

            Conditions      = new List <MegaloScriptProtoCondition>();
            ActionTemplates = new List <MegaloScriptProtoActionTemplate>();
            Actions         = new List <MegaloScriptProtoAction>();

            VariableRefTypes = new Dictionary <MegaloScriptVariableReferenceType, MegaloScriptProtoVariableReference>();
            VariableSets     = new Dictionary <MegaloScriptVariableSet, MegaloScriptProtoVariableSet>();

            NameToValueType    = new Dictionary <string, MegaloScriptValueType>();
            NameToConditionMap = new Dictionary <string, MegaloScriptProtoCondition>();
            NameToActionMap    = new Dictionary <string, MegaloScriptProtoAction>();

            ImportCodeEnum <MegaloScriptComparisonType>                      ("ComparisonType");
            ImportCodeEnum <MegaloScriptOperationType>                       ("OperationType");
            ImportCodeEnum <RuntimeData.GameTeamDesignator>          ("TeamDesignator");
            ImportCodeEnum <GameEngineTimerRate>                                     ("TimerRate");
            ImportCodeEnum <MegaloScriptNavpointIconType>            ("NavpointIconType");
            ImportCodeEnum <MegaloScriptDamageReportingModifier>     ("DamageReportingModifier");

            if (forBuild.IsChildOf(Engine.EngineRegistry.EngineBranchHaloReach.BranchHandle))
            {
                InitializeForHaloReach();
            }
            else if (forBuild.IsChildOf(Engine.EngineRegistry.EngineBranchHalo4.BranchHandle))
            {
                InitializeForHalo4();
            }
            else
            {
                Contract.Assert(false);
                throw new KSoft.Debug.UnreachableException(string.Format(
                                                               "Failed to handle build: {0}",
                                                               forBuild));
            }
        }
Beispiel #4
0
 internal GameGlobalsOrdnanceList(EngineLimits limits)
 {
     Types = new Dictionary <string, GameGlobalsOrdnance>(limits.GameOrdnanceTypes.MaxCount);
     Sets  = new List <GameGlobalsOrdnanceSetEntry>();
 }