test
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3ad9b87dffba344c89909c6d1b1c17e1
|
||||
folderAsset: yes
|
||||
timeCreated: 1475593892
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@@ -0,0 +1,115 @@
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System;
|
||||
|
||||
namespace Samples.GameplaySequence
|
||||
{
|
||||
[CustomEditor(typeof(Readme))]
|
||||
public class ReadmeEditor : Editor
|
||||
{
|
||||
const float k_Space = 16f;
|
||||
|
||||
protected override void OnHeaderGUI()
|
||||
{
|
||||
var readme = (Readme)target;
|
||||
Init();
|
||||
|
||||
float iconWidth = Mathf.Min(EditorGUIUtility.currentViewWidth / 3f - 20f, 128f);
|
||||
|
||||
GUILayout.BeginHorizontal("In BigTitle");
|
||||
{
|
||||
GUILayout.Label(readme.icon, GUILayout.Width(iconWidth), GUILayout.Height(iconWidth));
|
||||
GUILayout.Label(readme.title, titleStyle);
|
||||
}
|
||||
GUILayout.EndHorizontal();
|
||||
}
|
||||
|
||||
public override void OnInspectorGUI()
|
||||
{
|
||||
var readme = (Readme)target;
|
||||
Init();
|
||||
|
||||
foreach (Readme.Section section in readme.sections)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(section.heading))
|
||||
{
|
||||
GUILayout.Label(section.heading, headingStyle);
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(section.text))
|
||||
{
|
||||
GUILayout.Label(section.text, bodyStyle);
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(section.linkText))
|
||||
{
|
||||
if (LinkLabel(new GUIContent(section.linkText)))
|
||||
{
|
||||
Application.OpenURL(section.url);
|
||||
}
|
||||
}
|
||||
|
||||
GUILayout.Space(k_Space);
|
||||
}
|
||||
}
|
||||
|
||||
bool m_Initialized;
|
||||
|
||||
[SerializeField] GUIStyle m_TitleStyle;
|
||||
[SerializeField] GUIStyle m_HeadingStyle;
|
||||
[SerializeField] GUIStyle m_LinkStyle;
|
||||
[SerializeField] GUIStyle m_BodyStyle;
|
||||
|
||||
GUIStyle linkStyle => m_LinkStyle;
|
||||
GUIStyle titleStyle => m_TitleStyle;
|
||||
GUIStyle headingStyle => m_HeadingStyle;
|
||||
GUIStyle bodyStyle => m_BodyStyle;
|
||||
|
||||
void Init()
|
||||
{
|
||||
if (m_Initialized)
|
||||
return;
|
||||
|
||||
m_BodyStyle = new GUIStyle(EditorStyles.label)
|
||||
{
|
||||
wordWrap = true,
|
||||
fontSize = 14
|
||||
};
|
||||
|
||||
m_TitleStyle = new GUIStyle(m_BodyStyle)
|
||||
{
|
||||
fontSize = 26
|
||||
};
|
||||
|
||||
m_HeadingStyle = new GUIStyle(m_BodyStyle)
|
||||
{
|
||||
fontSize = 18
|
||||
};
|
||||
|
||||
// Match selection color which works nicely for both light and dark skins
|
||||
m_LinkStyle = new GUIStyle(m_BodyStyle)
|
||||
{
|
||||
wordWrap = false,
|
||||
normal = { textColor = new Color(0x00 / 255f, 0x78 / 255f, 0xDA / 255f, 1f) },
|
||||
stretchWidth = false
|
||||
};
|
||||
|
||||
m_Initialized = true;
|
||||
}
|
||||
|
||||
bool LinkLabel(GUIContent label, params GUILayoutOption[] options)
|
||||
{
|
||||
Rect position = GUILayoutUtility.GetRect(label, linkStyle, options);
|
||||
|
||||
Handles.BeginGUI();
|
||||
Handles.color = linkStyle.normal.textColor;
|
||||
Handles.DrawLine(new Vector3(position.xMin, position.yMax), new Vector3(position.xMax, position.yMax));
|
||||
Handles.color = Color.white;
|
||||
Handles.EndGUI();
|
||||
|
||||
EditorGUIUtility.AddCursorRect(position, MouseCursor.Link);
|
||||
|
||||
return GUI.Button(position, label, linkStyle);
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 476cc7d7cd9874016adc216baab94a0a
|
||||
timeCreated: 1484146680
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@@ -0,0 +1,19 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Samples.GameplaySequence
|
||||
{
|
||||
public class Readme : ScriptableObject
|
||||
{
|
||||
public Texture2D icon;
|
||||
public string title;
|
||||
public Section[] sections;
|
||||
public bool loadedLayout;
|
||||
|
||||
[Serializable]
|
||||
public class Section
|
||||
{
|
||||
public string heading, text, linkText, url;
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fcf7219bab7fe46a1ad266029b2fee19
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences:
|
||||
- icon: {fileID: 2800000, guid: d4743ba2e2a59f946b2125c074582ce7, type: 3}
|
||||
executionOrder: 0
|
||||
icon: {fileID: 2800000, guid: a186f8a87ca4f4d3aa864638ad5dfb65, type: 3}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"name": "Samples.GameplaySequence",
|
||||
"rootNamespace": "",
|
||||
"references": [],
|
||||
"includePlatforms": [
|
||||
"Editor"
|
||||
],
|
||||
"excludePlatforms": [],
|
||||
"allowUnsafeCode": false,
|
||||
"overrideReferences": false,
|
||||
"precompiledReferences": [],
|
||||
"autoReferenced": true,
|
||||
"defineConstraints": [],
|
||||
"versionDefines": [],
|
||||
"noEngineReferences": false
|
||||
}
|
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d1c7a97265a0ce04cbbc8a77ecad357d
|
||||
AssemblyDefinitionImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Reference in New Issue
Block a user