Bug fixes and tuning
This commit is contained in:
parent
540958f7f8
commit
7359b6efb7
@ -570,13 +570,6 @@ namespace RobloxFiles
|
||||
public class BallSocketConstraint : Constraint
|
||||
{
|
||||
public bool LimitsEnabled = false;
|
||||
|
||||
public float MaxFrictionTorque
|
||||
{
|
||||
get { return MaxFrictionTorqueXml; }
|
||||
set { MaxFrictionTorqueXml = value; }
|
||||
}
|
||||
|
||||
public float MaxFrictionTorqueXml = 0;
|
||||
public float Radius = 0.15f;
|
||||
public float Restitution = 0;
|
||||
@ -2180,6 +2173,7 @@ namespace RobloxFiles
|
||||
|
||||
public abstract class TriangleMeshPart : BasePart
|
||||
{
|
||||
public CollisionFidelity CollisionFidelity = CollisionFidelity.Default;
|
||||
public Vector3 InitialSize = new Vector3(1, 1, 1);
|
||||
public byte[] LODData = new byte[0];
|
||||
public SharedString PhysicalConfigData = SharedString.FromBase64("1B2M2Y8AsgTpgAmY7PhCfg==");
|
||||
|
Binary file not shown.
@ -35,29 +35,10 @@ local GuiTextMixIn =
|
||||
|
||||
return
|
||||
{
|
||||
AnalyticsService =
|
||||
{
|
||||
Defaults = { ApiKey = "" }
|
||||
};
|
||||
|
||||
BallSocketConstraint =
|
||||
{
|
||||
-- Why does this even exist?
|
||||
Add =
|
||||
{
|
||||
MaxFrictionTorque = "float";
|
||||
MaxFrictionTorqueXml = "float";
|
||||
};
|
||||
|
||||
Defaults =
|
||||
{
|
||||
MaxFrictionTorqueXml = 0;
|
||||
};
|
||||
|
||||
Redirect =
|
||||
{
|
||||
MaxFrictionTorque = "MaxFrictionTorqueXml";
|
||||
}
|
||||
Add = { MaxFrictionTorqueXml = "float" };
|
||||
};
|
||||
|
||||
BasePart =
|
||||
@ -81,12 +62,6 @@ return
|
||||
Color3uint8 = Color3.fromRGB(163, 162, 165);
|
||||
size = Vector3.new(4, 1.2, 2);
|
||||
};
|
||||
|
||||
Remove =
|
||||
{
|
||||
"Orientation";
|
||||
"Rotation";
|
||||
}
|
||||
};
|
||||
|
||||
BaseScript =
|
||||
@ -101,27 +76,12 @@ return
|
||||
Bevel = "float";
|
||||
Bevel_Roundness = "float";
|
||||
Bulge = "float";
|
||||
};
|
||||
|
||||
Defaults =
|
||||
{
|
||||
Bevel = 0;
|
||||
Bevel_Roundness = 0;
|
||||
Bulge = 0;
|
||||
}
|
||||
};
|
||||
|
||||
BinaryStringValue =
|
||||
{
|
||||
Add =
|
||||
{
|
||||
Value = "BinaryString";
|
||||
};
|
||||
|
||||
Defaults =
|
||||
{
|
||||
Value = "";
|
||||
};
|
||||
Add = { Value = "BinaryString" };
|
||||
};
|
||||
|
||||
BodyColors =
|
||||
@ -147,11 +107,6 @@ return
|
||||
Redirect = { cframe = "CFrame" };
|
||||
};
|
||||
|
||||
Bone =
|
||||
{
|
||||
Remove = {"Transform"}
|
||||
};
|
||||
|
||||
Camera =
|
||||
{
|
||||
Redirect = { CoordinateFrame = "CFrame" }
|
||||
@ -159,8 +114,7 @@ return
|
||||
|
||||
CustomEvent =
|
||||
{
|
||||
Add = { PersistedCurrentValue = "float"; };
|
||||
Defaults = { PersistedCurrentValue = 0; };
|
||||
Add = { PersistedCurrentValue = "float" };
|
||||
};
|
||||
|
||||
DataModelMesh =
|
||||
@ -187,15 +141,9 @@ return
|
||||
}
|
||||
};
|
||||
|
||||
DebuggerWatch =
|
||||
{
|
||||
Defaults = { Expression = "" };
|
||||
};
|
||||
|
||||
DoubleConstrainedValue =
|
||||
{
|
||||
Add = { value = "double" };
|
||||
Defaults = { value = 0.0 };
|
||||
Add = { value = "double" };
|
||||
|
||||
Redirect =
|
||||
{
|
||||
@ -311,12 +259,6 @@ return
|
||||
EmotesDataInternal = "string";
|
||||
EquippedEmotesDataInternal = "string";
|
||||
};
|
||||
|
||||
Defaults =
|
||||
{
|
||||
EmotesDataInternal = "";
|
||||
EquippedEmotesDataInternal = "";
|
||||
};
|
||||
};
|
||||
|
||||
InsertService =
|
||||
@ -328,7 +270,6 @@ return
|
||||
IntConstrainedValue =
|
||||
{
|
||||
Add = { value = "int64" };
|
||||
Defaults = { value = 0; };
|
||||
|
||||
Redirect =
|
||||
{
|
||||
@ -384,13 +325,6 @@ return
|
||||
ScriptGuid = "string";
|
||||
Source = "ProtectedString";
|
||||
};
|
||||
|
||||
Defaults =
|
||||
{
|
||||
LinkedSource = "";
|
||||
ScriptGuid = "";
|
||||
Source = "";
|
||||
};
|
||||
};
|
||||
|
||||
ManualSurfaceJointInstance =
|
||||
@ -415,8 +349,7 @@ return
|
||||
|
||||
Model =
|
||||
{
|
||||
Add = { ModelInPrimary = "CFrame" };
|
||||
Defaults = { ModelInPrimary = CFrame.new() };
|
||||
Add = { ModelInPrimary = "CFrame" };
|
||||
};
|
||||
|
||||
ModuleScript =
|
||||
@ -436,13 +369,7 @@ return
|
||||
PackageIdSerialize = "Content";
|
||||
};
|
||||
|
||||
Defaults =
|
||||
{
|
||||
AutoUpdate = false;
|
||||
|
||||
VersionIdSerialize = 0;
|
||||
PackageIdSerialize = "";
|
||||
};
|
||||
Defaults = { AutoUpdate = false };
|
||||
};
|
||||
|
||||
Part =
|
||||
@ -473,13 +400,7 @@ return
|
||||
FormFactor = "Enum:FormFactor";
|
||||
};
|
||||
|
||||
Defaults =
|
||||
{
|
||||
AssetId = "";
|
||||
ChildData = "";
|
||||
MeshData = "";
|
||||
FormFactor = Enum.FormFactor.Custom;
|
||||
};
|
||||
Defaults = { FormFactor = Enum.FormFactor.Custom };
|
||||
};
|
||||
|
||||
PartOperationAsset =
|
||||
@ -489,21 +410,11 @@ return
|
||||
ChildData = "BinaryString";
|
||||
MeshData = "BinaryString";
|
||||
};
|
||||
|
||||
Defaults =
|
||||
{
|
||||
ChildData = "";
|
||||
MeshData = "";
|
||||
};
|
||||
};
|
||||
|
||||
Players =
|
||||
{
|
||||
Defaults =
|
||||
{
|
||||
MaxPlayersInternal = 16;
|
||||
PreferredPlayersInternal = 0;
|
||||
}
|
||||
Defaults = { MaxPlayersInternal = 16 }
|
||||
};
|
||||
|
||||
SelectionBox =
|
||||
@ -585,24 +496,29 @@ return
|
||||
Redirect = { Color = "SparkleColor" };
|
||||
};
|
||||
|
||||
StarterPlayer =
|
||||
{
|
||||
Defaults =
|
||||
{
|
||||
GameSettingsAvatar = Enum.GameAvatarType.R15;
|
||||
GameSettingsR15Collision = Enum.R15CollisionType.OuterBox;
|
||||
|
||||
GameSettingsScaleRangeHead = NumberRange.new(0.95, 1.00);
|
||||
GameSettingsScaleRangeWidth = NumberRange.new(0.70, 1.00);
|
||||
GameSettingsScaleRangeHeight = NumberRange.new(0.90, 1.05);
|
||||
GameSettingsScaleRangeBodyType = NumberRange.new(0.00, 1.00);
|
||||
GameSettingsScaleRangeProportion = NumberRange.new(0.00, 1.00);
|
||||
};
|
||||
};
|
||||
|
||||
StudioData =
|
||||
{
|
||||
Add =
|
||||
{
|
||||
CommitInflightAuthorId = "int64";
|
||||
CommitInflightGuid = "string";
|
||||
CommitInflightAuthorId = "int64";
|
||||
CommitInflightPlaceVersion = "int";
|
||||
};
|
||||
|
||||
Defaults =
|
||||
{
|
||||
CommitInflightAuthorId = 0;
|
||||
CommitInflightGuid = "";
|
||||
CommitInflightPlaceVersion = 0;
|
||||
|
||||
SrcPlaceId = 0;
|
||||
SrcUniverseId = 0;
|
||||
};
|
||||
};
|
||||
|
||||
SurfaceAppearance =
|
||||
@ -628,10 +544,6 @@ return
|
||||
|
||||
Defaults =
|
||||
{
|
||||
ClusterGrid = "";
|
||||
ClusterGridV2 = "";
|
||||
ClusterGridV3 = "";
|
||||
|
||||
Decoration = false;
|
||||
|
||||
SmoothGrid = "AQU=";
|
||||
@ -669,14 +581,14 @@ return
|
||||
LODData = "BinaryString";
|
||||
PhysicsData = "BinaryString";
|
||||
PhysicalConfigData = "SharedString";
|
||||
CollisionFidelity = "Enum:CollisionFidelity";
|
||||
};
|
||||
|
||||
Defaults =
|
||||
{
|
||||
LODData = "";
|
||||
PhysicsData = "";
|
||||
InitialSize = Vector3.new(1, 1, 1);
|
||||
PhysicalConfigData = "1B2M2Y8AsgTpgAmY7PhCfg==";
|
||||
CollisionFidelity = Enum.CollisionFidelity.Default;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -18,6 +18,7 @@ local numberTypes =
|
||||
{
|
||||
int = true;
|
||||
long = true;
|
||||
int64 = true;
|
||||
float = true;
|
||||
double = true;
|
||||
}
|
||||
@ -26,6 +27,7 @@ local stringTypes =
|
||||
{
|
||||
string = true;
|
||||
Content = true;
|
||||
BinaryString = true;
|
||||
ProtectedString = true;
|
||||
}
|
||||
|
||||
@ -406,11 +408,15 @@ local function generateClasses()
|
||||
end
|
||||
|
||||
for propName, propType in pairs(classPatches.Add) do
|
||||
if not propMap[propName] then
|
||||
local prop = propMap[propName]
|
||||
|
||||
if prop then
|
||||
local serial = prop.Serialization
|
||||
serial.CanSave = true
|
||||
serial.CanLoad = true
|
||||
else
|
||||
propMap[propName] = createProperty(propName, propType)
|
||||
table.insert(propNames, propName)
|
||||
else
|
||||
propMap[propName].Serialization.CanLoad = true
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -6,11 +6,11 @@
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{CF50C0E2-23A7-4DC1-B4B2-E60CDE716253}</ProjectGuid>
|
||||
<OutputType>Exe</OutputType>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>RobloxFiles</RootNamespace>
|
||||
<AssemblyName>RobloxFileFormat</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<PublishUrl>publish\</PublishUrl>
|
||||
<Install>true</Install>
|
||||
@ -29,6 +29,7 @@
|
||||
<BootstrapperEnabled>true</BootstrapperEnabled>
|
||||
<NuGetPackageImportStamp>
|
||||
</NuGetPackageImportStamp>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
|
Binary file not shown.
@ -42,7 +42,7 @@ namespace RobloxFiles.Utility
|
||||
/// There are some name duplicates, but that's an issue on Roblox's end.
|
||||
/// </summary>
|
||||
|
||||
public static IReadOnlyList<BrickColor> ColorMap = new List<BrickColor>()
|
||||
public static readonly IReadOnlyList<BrickColor> ColorMap = new List<BrickColor>()
|
||||
{
|
||||
new BrickColor( 1, 0xF2F3F3, "White"),
|
||||
new BrickColor( 2, 0xA1A5A2, "Grey"),
|
||||
|
@ -1,8 +1,5 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
using RobloxFiles.Enums;
|
||||
|
||||
@ -10,7 +7,7 @@ namespace RobloxFiles.Utility
|
||||
{
|
||||
public static class FontUtility
|
||||
{
|
||||
public static IReadOnlyDictionary<int, FontSize> FontSizes = new Dictionary<int, FontSize>()
|
||||
public static readonly IReadOnlyDictionary<int, FontSize> FontSizes = new Dictionary<int, FontSize>()
|
||||
{
|
||||
{ 8, FontSize.Size8 },
|
||||
{ 9, FontSize.Size9 },
|
||||
@ -29,8 +26,6 @@ namespace RobloxFiles.Utility
|
||||
{ 96, FontSize.Size96 },
|
||||
};
|
||||
|
||||
private static Dictionary<int, FontSize> IntToFontSize = new Dictionary<int, FontSize>();
|
||||
|
||||
public static FontSize GetFontSize(int fontSize)
|
||||
{
|
||||
if (fontSize > 60)
|
||||
|
@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
|
||||
namespace RobloxFiles.Utility
|
||||
@ -14,12 +15,20 @@ namespace RobloxFiles.Utility
|
||||
|
||||
public static ImplicitMember Get(Type type, string name)
|
||||
{
|
||||
var field = type.GetField(name, flags);
|
||||
var prop = type.GetProperty(name, flags);
|
||||
var field = type
|
||||
.GetFields(flags)
|
||||
.Where(f => f.Name == name)
|
||||
.FirstOrDefault();
|
||||
|
||||
if (field != null)
|
||||
return new ImplicitMember(field);
|
||||
else if (prop != null)
|
||||
|
||||
var prop = type
|
||||
.GetProperties(flags)
|
||||
.Where(p => p.Name == name)
|
||||
.FirstOrDefault();
|
||||
|
||||
if (prop != null)
|
||||
return new ImplicitMember(prop);
|
||||
|
||||
return null;
|
||||
|
@ -12,7 +12,7 @@ namespace RobloxFiles.Utility
|
||||
/// <summary>
|
||||
/// A dictionary mapping materials to their default Density.
|
||||
/// </summary>
|
||||
public static IReadOnlyDictionary<Material, float> DensityMap = new Dictionary<Material, float>()
|
||||
public static readonly IReadOnlyDictionary<Material, float> DensityMap = new Dictionary<Material, float>()
|
||||
{
|
||||
{Material.Air, 0.01f},
|
||||
{Material.Asphalt, 2.36f},
|
||||
@ -56,7 +56,7 @@ namespace RobloxFiles.Utility
|
||||
/// <summary>
|
||||
/// A dictionary mapping materials to their default Elasticity.
|
||||
/// </summary>
|
||||
public static IReadOnlyDictionary<Material, float> ElasticityMap = new Dictionary<Material, float>()
|
||||
public static readonly IReadOnlyDictionary<Material, float> ElasticityMap = new Dictionary<Material, float>()
|
||||
{
|
||||
{Material.Air, 0.01f},
|
||||
{Material.Asphalt, 0.20f},
|
||||
@ -100,7 +100,7 @@ namespace RobloxFiles.Utility
|
||||
/// <summary>
|
||||
/// A dictionary mapping materials to their default Friction.
|
||||
/// </summary>
|
||||
public static IReadOnlyDictionary<Material, float> FrictionMap = new Dictionary<Material, float>()
|
||||
public static readonly IReadOnlyDictionary<Material, float> FrictionMap = new Dictionary<Material, float>()
|
||||
{
|
||||
{Material.Air, 0.01f},
|
||||
{Material.Asphalt, 0.80f},
|
||||
@ -146,7 +146,7 @@ namespace RobloxFiles.Utility
|
||||
/// NOTE: This only maps materials that have different FrictionWeights.<para/>
|
||||
/// If it isn't in here, assume their FrictionWeight is 1.
|
||||
/// </summary>
|
||||
public static IReadOnlyDictionary<Material, float> FrictionWeightMap = new Dictionary<Material, float>()
|
||||
public static readonly IReadOnlyDictionary<Material, float> FrictionWeightMap = new Dictionary<Material, float>()
|
||||
{
|
||||
{Material.Asphalt, 0.30f},
|
||||
{Material.Basalt, 0.30f},
|
||||
|
Loading…
Reference in New Issue
Block a user