Field attributes
DataObjectDropdown

Enables a useful dropdown field with additional features such as unassign, create new and find DataObject. When using this attribute outside of a DataObject - like in a MonoBehaviour, it is necessary to add a reference to the DataLibrary object and pass the name of the DataLibrary field.
dataLibraryFieldName: the name of the data library field
includeSubtypes: if true, dropdown also shows derived types
tooltip: set an additional etooltip
public class Enemy : MonoBehaviour
{
public DataLibrary data;
[DataObjectDropdown("data")]
public EnemyData enemyData;
}
ExposeToInspector

Use the ExposeToInspector attribute to mark fields which should be displayed in the popup inspector on the DataObjectDropdown property drawer.
public EnemyData : DataObject
{
[ExposeToInspector]
public int health;
[ExposeToInspector]
public int speed;
[ExposeToInspector]
public GameObject prefab
public Vector3 position;
}
DatabrainSerialize
Mark fields which should be serialized by Databrain to a file with the [DatabrainSerialize] attribute. Only fields of DataObjects which are in the runtime-DataLibrary will be serialized.
[DataObjectAddToRuntimeLibrary]
public EnemyData : DataObject
{
[ExposeToInspector]
[DatabrainSerialize]
public int health;
[ExposeToInspector]
[DatabrainSerialize]
public int speed;
[ExposeToInspector]
public GameObject prefab
[DatabrainSerialize]
public Vector3 position;
}
Border

Set a border around a field
borderWidth: The width of the border
color: The color of the border
HorizontalLine

Create a horizontal line with custom width and color
height: height of the line
color: color of the line (DatabrainColor)
Dropdown

Create a dropdown selection
// string
private List<string> dropdownOptions = new List<string> { "A", "B", "C" };
[Dropdown("dropdownOptions")]
public string dropdown;
// integer
private List<int> dropdownIntOptions = new List<int> { 0, 1, 2 };
[Dropdown("dropdownIntOptions")]
public int dropdownNumber;
Foldout
Group fields by foldouts (only works in the Databrain editor)
[Foldout("curves")]
public AnimationCurve curve1;
[Foldout("curves")]
public AnimationCurve curve2;
[Foldout("Numbers")]
public int numberOne;
[Foldout("Numbers")]
public int numberTwo;
InfoBox

Shows an info box.
infoBoxtype: The type of the infoBox (InfoBoxType.Normal / InfoBoxType.Warning / InfoBoxType.Error
text: The text message
EnumFlags

Shows an enum selection toggle group for choosing multiple enums.
public enum TerrainType
{
none = 0,
sand = 1,
earth = 2,
water = 4,
rock = 8
}
[EnumFlags]
public TerrainType terrainType;
Hide
Hides a field
Layer
Shows a layer dropdown.
[Layer]
public string layer;
[Layer]
public int layerInt;
Slider
Create a slider with min and max value
Scene
Create a scene dropdown field
ShowAssetPreview

Creates a preview window of assigned game object
width
height
Tag
Creates a tag dropdown field.
[Tag]
public string tag;
Textfield
Creates a multiline textfield
Title
Adds a title to the field with an optional border.
title
borderColor
textColor
Last updated