Beispiel #1
0
    public static void StatusTimeChange(ref StatusTimeChange stc)
    {
        stc.statusID = EditorGUILayout.Popup("Status value", stc.statusID,
                DataHolder.StatusValues().GetNameList(true), GUILayout.Width(mWidth));
        if(!DataHolder.StatusValue(stc.statusID).IsConsumable())
        {
            stc.statusID = DataHolder.StatusValues().GetFirstConsumable();
        }
        stc.showText = EditorGUILayout.Toggle("Show text", stc.showText, GUILayout.Width(mWidth));
        stc.forcePerSecond = EditorGUILayout.Toggle("Force per second", stc.forcePerSecond, GUILayout.Width(mWidth));
        EditorGUILayout.Separator();

        stc.useFormula = EditorGUILayout.Toggle("Use formula", stc.useFormula, GUILayout.Width(mWidth));
        if(stc.useFormula)
        {
            stc.formulaID = EditorGUILayout.Popup("Formula", stc.formulaID,
                    DataHolder.Formulas().GetNameList(true), GUILayout.Width(mWidth));
        }
        else
        {
            stc.value = EditorGUILayout.FloatField("Value", stc.value, GUILayout.Width(mWidth));
        }
        EditorGUILayout.Separator();

        EditorGUILayout.BeginHorizontal();
        stc.minCheck = EditorGUILayout.Toggle("Minimum value", stc.minCheck, GUILayout.Width(mWidth));
        if(stc.minCheck)
        {
            stc.minValue = EditorGUILayout.IntField(stc.minValue, GUILayout.Width(mWidth*0.5f));
        }
        GUILayout.FlexibleSpace();
        EditorGUILayout.EndHorizontal();

        EditorGUILayout.BeginHorizontal();
        stc.maxCheck = EditorGUILayout.Toggle("Maximum value", stc.maxCheck, GUILayout.Width(mWidth));
        if(stc.maxCheck)
        {
            stc.maxValue = EditorGUILayout.IntField(stc.maxValue, GUILayout.Width(mWidth*0.5f));
        }
        GUILayout.FlexibleSpace();
        EditorGUILayout.EndHorizontal();
    }
Beispiel #2
0
 public static StatusTimeChange[] Add(StatusTimeChange n, StatusTimeChange[] list)
 {
     ArrayList tmp = new ArrayList();
     foreach(StatusTimeChange str in list) tmp.Add(str);
     tmp.Add(n);
     return tmp.ToArray(typeof(StatusTimeChange)) as StatusTimeChange[];
 }
 public StatusTimeChange GetCopy()
 {
     StatusTimeChange stc = new StatusTimeChange();
     stc.SetData(this.GetData(new Hashtable()));
     return stc;
 }
Beispiel #4
0
 public static StatusTimeChange[] Remove(int index, StatusTimeChange[] list)
 {
     ArrayList tmp = new ArrayList();
     foreach(StatusTimeChange str in list) tmp.Add(str);
     tmp.RemoveAt(index);
     return tmp.ToArray(typeof(StatusTimeChange)) as StatusTimeChange[];
 }