mirror of
https://gitgud.io/AbstractConcept/rimworld-animation-studio.git
synced 2024-08-15 00:43:27 +00:00
Initial commit
This commit is contained in:
commit
3c7cc0c973
8391 changed files with 704313 additions and 0 deletions
|
@ -0,0 +1,167 @@
|
|||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
namespace UnityEditor.U2D.Animation
|
||||
{
|
||||
internal class SkinningModuleSettings
|
||||
{
|
||||
public const string kCompactToolbarKey = UserSettings.kSettingsUniqueKey + "AnimationEditorSetting.compactToolbar";
|
||||
public static readonly GUIContent kCompactToolbarLabel = EditorGUIUtility.TrTextContent("Hide Tool Text");
|
||||
public static bool compactToolBar
|
||||
{
|
||||
get { return EditorPrefs.GetBool(kCompactToolbarKey, false); }
|
||||
set { EditorPrefs.SetBool(kCompactToolbarKey, value); }
|
||||
}
|
||||
|
||||
public void OnGUI()
|
||||
{
|
||||
EditorGUI.BeginChangeCheck();
|
||||
var c = EditorGUILayout.Toggle(kCompactToolbarLabel, compactToolBar);
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
compactToolBar = c;
|
||||
}
|
||||
}
|
||||
|
||||
internal class VisibilityToolSettings
|
||||
{
|
||||
public const string kBoneOpacitykey = UserSettings.kSettingsUniqueKey + "VisibilityToolSettings.boneOpacity";
|
||||
public const string kMeshOpacityKey = UserSettings.kSettingsUniqueKey + "VisibilityToolSettings.meshOpacity";
|
||||
public static float boneOpacity
|
||||
{
|
||||
get { return EditorPrefs.GetFloat(kBoneOpacitykey, 1.0f); }
|
||||
set { EditorPrefs.SetFloat(kBoneOpacitykey, value); }
|
||||
}
|
||||
|
||||
public static float meshOpacity
|
||||
{
|
||||
get { return EditorPrefs.GetFloat(kMeshOpacityKey, 0.5f); }
|
||||
set { EditorPrefs.SetFloat(kMeshOpacityKey, value); }
|
||||
}
|
||||
}
|
||||
|
||||
internal class GenerateGeomertySettings
|
||||
{
|
||||
public const int kDefaultOutlineDetail = 10;
|
||||
public const int kDefaultAlphaTolerance = 10;
|
||||
public const int kDefaultSubdivide = 20;
|
||||
public const string kOutlineDetailKey = UserSettings.kSettingsUniqueKey + "GenerateGeomertySetting.outlineDetail";
|
||||
public const string kAlphaToleranceKey = UserSettings.kSettingsUniqueKey + "GenerateGeomertySetting.alphaTolerance";
|
||||
public const string kSubdivideKey = UserSettings.kSettingsUniqueKey + "GenerateGeomertySetting.subdivide";
|
||||
public const string kGenerateWeightsKey = UserSettings.kSettingsUniqueKey + "GenerateGeomertySetting.generateWeights";
|
||||
|
||||
public static int outlineDetail
|
||||
{
|
||||
get { return EditorPrefs.GetInt(kOutlineDetailKey, kDefaultOutlineDetail); }
|
||||
set { EditorPrefs.SetInt(kOutlineDetailKey, value); }
|
||||
}
|
||||
|
||||
public static int alphaTolerance
|
||||
{
|
||||
get { return EditorPrefs.GetInt(kAlphaToleranceKey, kDefaultAlphaTolerance); }
|
||||
set { EditorPrefs.SetInt(kAlphaToleranceKey, value); }
|
||||
}
|
||||
|
||||
public static int subdivide
|
||||
{
|
||||
get { return EditorPrefs.GetInt(kSubdivideKey, kDefaultSubdivide); }
|
||||
set { EditorPrefs.SetInt(kSubdivideKey, value); }
|
||||
}
|
||||
|
||||
public static bool generateWeights
|
||||
{
|
||||
get { return EditorPrefs.GetBool(kGenerateWeightsKey, true); }
|
||||
set { EditorPrefs.SetBool(kGenerateWeightsKey, value); }
|
||||
}
|
||||
}
|
||||
|
||||
internal class SelectionOutlineSettings
|
||||
{
|
||||
public const string kSelectedOutlineRedKey = UserSettings.kSettingsUniqueKey + "OutlineColorRed";
|
||||
public const string kSelectedOutlineGreenKey = UserSettings.kSettingsUniqueKey + "OutlineColorGreen";
|
||||
public const string kSelectedOutlineBlueKey = UserSettings.kSettingsUniqueKey + "OutlineColorBlue";
|
||||
public const string kSelectedOutlineAlphaKey = UserSettings.kSettingsUniqueKey + "OutlineColorAlpha";
|
||||
public const string kSelectedSpriteOutlineSize = UserSettings.kSettingsUniqueKey + "OutlineSize";
|
||||
public const string kSelectedBoneOutlineSize = UserSettings.kSettingsUniqueKey + "BoneOutlineSize";
|
||||
public static readonly GUIContent kSelectedOutlineColorLabel = EditorGUIUtility.TrTextContent(TextContent.selectedOutlineColor);
|
||||
public static readonly GUIContent kSelectedOutlineSizeLabel = EditorGUIUtility.TrTextContent(TextContent.spriteOutlineSize);
|
||||
public static readonly GUIContent kSelectedBoneOutlineSizeLabel = EditorGUIUtility.TrTextContent(TextContent.boneOutlineSize);
|
||||
|
||||
public static Color outlineColor
|
||||
{
|
||||
get
|
||||
{
|
||||
return new Color()
|
||||
{
|
||||
r = EditorPrefs.GetFloat(kSelectedOutlineRedKey, 1),
|
||||
g = EditorPrefs.GetFloat(kSelectedOutlineGreenKey, 102.0f / 255.0f),
|
||||
b = EditorPrefs.GetFloat(kSelectedOutlineBlueKey, 0),
|
||||
a = EditorPrefs.GetFloat(kSelectedOutlineAlphaKey, 1)
|
||||
};
|
||||
}
|
||||
set
|
||||
{
|
||||
EditorPrefs.SetFloat(kSelectedOutlineRedKey, value.r);
|
||||
EditorPrefs.SetFloat(kSelectedOutlineGreenKey, value.g);
|
||||
EditorPrefs.SetFloat(kSelectedOutlineBlueKey, value.b);
|
||||
EditorPrefs.SetFloat(kSelectedOutlineAlphaKey, value.a);
|
||||
}
|
||||
}
|
||||
|
||||
public static int selectedSpriteOutlineSize
|
||||
{
|
||||
get { return EditorPrefs.GetInt(kSelectedSpriteOutlineSize, 1); }
|
||||
set { EditorPrefs.SetInt(kSelectedSpriteOutlineSize, value); }
|
||||
}
|
||||
|
||||
public static float selectedBoneOutlineSize
|
||||
{
|
||||
get { return EditorPrefs.GetFloat(kSelectedBoneOutlineSize, 1); }
|
||||
set { EditorPrefs.SetFloat(kSelectedBoneOutlineSize, value); }
|
||||
}
|
||||
|
||||
public void OnGUI()
|
||||
{
|
||||
EditorGUI.BeginChangeCheck();
|
||||
var c = EditorGUILayout.ColorField(kSelectedOutlineColorLabel, outlineColor);
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
outlineColor = c;
|
||||
|
||||
EditorGUI.BeginChangeCheck();
|
||||
var s = EditorGUILayout.IntSlider(kSelectedOutlineSizeLabel, selectedSpriteOutlineSize, 0, 10);
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
selectedSpriteOutlineSize = s;
|
||||
|
||||
EditorGUI.BeginChangeCheck();
|
||||
var o = EditorGUILayout.Slider(kSelectedBoneOutlineSizeLabel, selectedBoneOutlineSize, 0, 3);
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
selectedBoneOutlineSize = o;
|
||||
}
|
||||
}
|
||||
|
||||
internal class UserSettings : SettingsProvider
|
||||
{
|
||||
public const string kSettingsUniqueKey = "UnityEditor.U2D.Animation/";
|
||||
private static SelectionOutlineSettings s_SelectionOutlineSettings = new SelectionOutlineSettings();
|
||||
private static SkinningModuleSettings s_SkinningModuleSettings = new SkinningModuleSettings();
|
||||
|
||||
public UserSettings() : base("Preferences/2D/Animation", SettingsScope.User)
|
||||
{
|
||||
guiHandler = OnGUI;
|
||||
}
|
||||
|
||||
[SettingsProvider]
|
||||
private static SettingsProvider CreateSettingsProvider()
|
||||
{
|
||||
return new UserSettings()
|
||||
{
|
||||
guiHandler = SettingsGUI
|
||||
};
|
||||
}
|
||||
|
||||
private static void SettingsGUI(string searchContext)
|
||||
{
|
||||
s_SkinningModuleSettings.OnGUI();
|
||||
s_SelectionOutlineSettings.OnGUI();
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue