Пример #1
0
        public GameData()
        {
            MapSizeHigh = 16384;
            MapSizeLow  = -16384;
            Classes     = new List <GameDataObject>();

            var lightDataObj = new GameDataObject("light", "Point light source.", ClassType.Point);

            lightDataObj.Properties.Add(new Property("color", VariableType.Color255)
            {
                DefaultValue = "255 255 255"
            });
            lightDataObj.Properties.Add(new Property("intensity", VariableType.Float)
            {
                DefaultValue = "1.0"
            });
            lightDataObj.Properties.Add(new Property("range", VariableType.Float)
            {
                DefaultValue = "1.0"
            });
            lightDataObj.Properties.Add(new Property("hassprite", VariableType.Bool)
            {
                DefaultValue = "true"
            });
            lightDataObj.Behaviours.Add(new Behaviour("sprite", "sprites/lightbulb.spr"));
            Classes.Add(lightDataObj);
            var spotlightDataObj = new GameDataObject("spotlight", "Self-explanatory.", ClassType.Point);

            spotlightDataObj.Properties.Add(new Property("color", VariableType.Color255)
            {
                DefaultValue = "255 255 255"
            });
            spotlightDataObj.Properties.Add(new Property("intensity", VariableType.Float)
            {
                DefaultValue = "1.0"
            });
            spotlightDataObj.Properties.Add(new Property("range", VariableType.Float)
            {
                DefaultValue = "1.0"
            });
            spotlightDataObj.Properties.Add(new Property("hassprite", VariableType.Bool)
            {
                DefaultValue = "true"
            });
            spotlightDataObj.Properties.Add(new Property("innerconeangle", VariableType.Float)
            {
                DefaultValue = "45"
            });
            spotlightDataObj.Properties.Add(new Property("outerconeangle", VariableType.Float)
            {
                DefaultValue = "90"
            });
            spotlightDataObj.Properties.Add(new Property("angles", VariableType.Vector)
            {
                DefaultValue = "0 0 0"
            });
            Classes.Add(spotlightDataObj);
            Classes.Add(new GameDataObject("waypoint", "AI waypoint.", ClassType.Point));
            Classes.Add(new GameDataObject("soundemitter", "Self-explanatory.", ClassType.Point));
            var modelDataObj = new GameDataObject("model", "Self-explanatory.", ClassType.Point);

            modelDataObj.Properties.Add(new Property("file", VariableType.Other)
            {
                DefaultValue = ""
            });
            modelDataObj.Properties.Add(new Property("angles", VariableType.Vector)
            {
                DefaultValue = "0 0 0"
            });
            modelDataObj.Properties.Add(new Property("scale", VariableType.Vector)
            {
                DefaultValue = "1 1 1"
            });
            Classes.Add(modelDataObj);

            var noShadowObj = new GameDataObject("noshadow", "Disables shadow casting for this brush.", ClassType.Solid);

            Classes.Add(noShadowObj);

            Includes           = new List <string>();
            MaterialExclusions = new List <string>();
            AutoVisgroups      = new List <AutoVisgroupSection>();
        }
Пример #2
0
        public GameData()
        {
            MapSizeHigh = 16384;
            MapSizeLow  = -16384;
            Classes     = new List <GameDataObject>();

            var lightDataObj = new GameDataObject("light", "Point light source.", ClassType.Point);

            lightDataObj.Properties.Add(new Property("color", VariableType.Color255)
            {
                ShortDescription = "Color", DefaultValue = "255 255 255"
            });
            lightDataObj.Properties.Add(new Property("intensity", VariableType.Float)
            {
                ShortDescription = "Intensity", DefaultValue = "1.0"
            });
            lightDataObj.Properties.Add(new Property("range", VariableType.Float)
            {
                ShortDescription = "Range", DefaultValue = "1.0"
            });
            lightDataObj.Properties.Add(new Property("hassprite", VariableType.Bool)
            {
                ShortDescription = "Has sprite", DefaultValue = "Yes"
            });
            lightDataObj.Behaviours.Add(new Behaviour("sprite", "sprites/lightbulb.spr"));
            Classes.Add(lightDataObj);

            var spotlightDataObj = new GameDataObject("spotlight", "Self-explanatory.", ClassType.Point);

            spotlightDataObj.Properties.Add(new Property("color", VariableType.Color255)
            {
                ShortDescription = "Color", DefaultValue = "255 255 255"
            });
            spotlightDataObj.Properties.Add(new Property("intensity", VariableType.Float)
            {
                ShortDescription = "Intensity", DefaultValue = "1.0"
            });
            spotlightDataObj.Properties.Add(new Property("range", VariableType.Float)
            {
                ShortDescription = "Range", DefaultValue = "1.0"
            });
            spotlightDataObj.Properties.Add(new Property("hassprite", VariableType.Bool)
            {
                ShortDescription = "Has sprite", DefaultValue = "Yes"
            });
            spotlightDataObj.Properties.Add(new Property("innerconeangle", VariableType.Float)
            {
                ShortDescription = "Inner cone angle", DefaultValue = "45"
            });
            spotlightDataObj.Properties.Add(new Property("outerconeangle", VariableType.Float)
            {
                ShortDescription = "Outer cone angle", DefaultValue = "90"
            });
            spotlightDataObj.Properties.Add(new Property("angles", VariableType.Vector)
            {
                ShortDescription = "Rotation", DefaultValue = "0 0 0"
            });
            Classes.Add(spotlightDataObj);

            var waypointDataObj = new GameDataObject("waypoint", "AI waypoint.", ClassType.Point);

            waypointDataObj.Behaviours.Add(new Behaviour("sprite", "sprites/waypoint"));
            Classes.Add(waypointDataObj);

            var soundEmitterDataObj = new GameDataObject("soundemitter", "Self-explanatory.", ClassType.Point);

            soundEmitterDataObj.Properties.Add(new Property("sound", VariableType.Integer)
            {
                ShortDescription = "Ambience index", DefaultValue = "1"
            });
            soundEmitterDataObj.Behaviours.Add(new Behaviour("sprite", "sprites/speaker.spr"));
            Classes.Add(soundEmitterDataObj);

            var modelDataObj = new GameDataObject("model", "Self-explanatory.", ClassType.Point);

            modelDataObj.Properties.Add(new Property("file", VariableType.String)
            {
                ShortDescription = "File", DefaultValue = ""
            });
            modelDataObj.Properties.Add(new Property("angles", VariableType.Vector)
            {
                ShortDescription = "Rotation", DefaultValue = "0 0 0"
            });
            modelDataObj.Properties.Add(new Property("scale", VariableType.Vector)
            {
                ShortDescription = "Scale", DefaultValue = "1 1 1"
            });
            Classes.Add(modelDataObj);

            var screenDataObj = new GameDataObject("screen", "Savescreen.", ClassType.Point);

            screenDataObj.Properties.Add(new Property("imgpath", VariableType.String)
            {
                ShortDescription = "Image Path", DefaultValue = ""
            });
            screenDataObj.Behaviours.Add(new Behaviour("sprite", "sprites/screen"));
            Classes.Add(screenDataObj);

            var noShadowObj = new GameDataObject("noshadow", "Disables shadow casting for this brush.", ClassType.Solid);

            Classes.Add(noShadowObj);

            Property p = new Property("position", VariableType.Vector)
            {
                ShortDescription = "Position", DefaultValue = "0 0 0"
            };

            foreach (GameDataObject gdo in Classes)
            {
                if (gdo.ClassType != ClassType.Solid)
                {
                    gdo.Properties.Add(p);
                }
            }

            Includes           = new List <string>();
            MaterialExclusions = new List <string>();
            AutoVisgroups      = new List <AutoVisgroupSection>();
        }