public int GUIListOfFloatObjectToggleFields(GUIContent label, SerializedProperty[] objectProps, EditorGUI.ObjectFieldValidator validator, GUIContent buttonTooltip, bool allowCreation, params GUILayoutOption[] layoutOptions)
{
int num = -1;
int length = objectProps.Length;
Rect totalPosition = GUILayoutUtility.GetRect((float) 0f, (float) (15 * length), layoutOptions);
totalPosition.height = 13f;
float num3 = 10f;
float num4 = 35f;
float num5 = 10f;
float width = (((totalPosition.width - num3) - num4) - (num5 * 2f)) - 9f;
PrefixLabel(totalPosition, label);
for (int i = 0; i < length; i++)
{
SerializedProperty property = objectProps[i];
Rect position = new Rect(((totalPosition.x + num3) + num4) + num5, totalPosition.y, width, totalPosition.height);
int id = GUIUtility.GetControlID(0x12da2a, FocusType.Keyboard, position);
EditorGUI.DoObjectField(position, position, id, null, null, property, validator, true, ParticleSystemStyles.Get().objectField);
if (property.objectReferenceValue == null)
{
position = new Rect(totalPosition.xMax - 9f, totalPosition.y + 3f, 9f, 9f);
if (allowCreation)
{
if (buttonTooltip == null)
{
}
if (!GUI.Button(position, GUIContent.none, ParticleSystemStyles.Get().plus))
{
goto Label_012B;
}
}
num = i;
}
Label_012B:
totalPosition.y += 15f;
}
return num;
}