Files
UltimateFishing/Assets/Scripts/Assembly-UnityScript/object_output_class.cs
2026-02-21 16:45:37 +08:00

255 lines
7.5 KiB
C#

using System;
using System.Collections.Generic;
using UnityEngine;
[Serializable]
public class object_output_class
{
public object active;
public bool foldout;
public Color color_object;
public line_placement_class line_placement;
public object_mode_enum object_mode;
public bool icon_display;
public bool objects_active;
public bool objects_foldout;
public float strength;
public bool interface_display;
public bool object_set;
public string object_text;
public float scale;
public float min_distance_x;
public float min_distance_z;
public float min_distance_x_rot;
public float min_distance_z_rot;
public bool group_rotation;
public bool group_rotation_steps;
public Vector3 group_rotation_step;
public List<Vector3> objects_placed;
public int placed;
[NonSerialized]
public object_output_class placed_reference;
public List<Vector3> objects_placed_rot;
public List<object_class> @object;
public value_class object_value;
[NonSerialized]
public rotation_map_class rotation_map;
public bool search_active;
public bool search_erase_doubles;
public Transform search_object;
public object_output_class()
{
foldout = true;
color_object = new Color(2f, 2f, 2f, 1f);
icon_display = true;
objects_active = true;
objects_foldout = true;
strength = 1f;
interface_display = true;
object_text = "Object:";
scale = 1f;
objects_placed = new List<Vector3>();
objects_placed_rot = new List<Vector3>();
@object = new List<object_class>();
object_value = new value_class();
rotation_map = new rotation_map_class();
}
public virtual void set_settings(object_class object1, int object_number, bool all)
{
for (int i = 0; i < @object.Count; i++)
{
if (object_value.active[i] || all)
{
@object[i].count_mesh();
Debug.Log(@object[i].object1.name);
if (i != object_number)
{
@object[i].parent = object1.parent;
@object[i].parent_clear = object1.parent_clear;
@object[i].combine = object1.combine;
@object[i].combine_total = object1.combine_total;
@object[i].place_max = object1.place_max;
@object[i].place_maximum = object1.place_maximum;
@object[i].place_maximum_total = object1.place_maximum_total;
}
if (!(@object[i].color_object[0] <= 0.5f))
{
@object[i].color_object = @object[i].color_object + new Color(-0.5f, 0f, -0.5f, 0f);
}
}
}
}
public virtual void set_transform(object_class object1, int object_number, bool all)
{
for (int i = 0; i < @object.Count; i++)
{
if (object_value.active[i] || all)
{
if (i != object_number)
{
@object[i].scale_start = object1.scale_start;
@object[i].scale_end = object1.scale_end;
@object[i].scale_link = object1.scale_link;
@object[i].scale_link_start_y = object1.scale_link_start_y;
@object[i].scale_link_end_y = object1.scale_link_end_y;
@object[i].scale_link_start_z = object1.scale_link_start_z;
@object[i].scale_link_end_z = object1.scale_link_end_z;
@object[i].rotation_start = object1.rotation_start;
@object[i].rotation_end = object1.rotation_end;
@object[i].rotation_link = object1.rotation_link;
@object[i].rotation_link_start_y = object1.rotation_link_start_y;
@object[i].rotation_link_end_y = object1.rotation_link_end_y;
@object[i].rotation_link_start_z = object1.rotation_link_start_z;
@object[i].rotation_link_end_z = object1.rotation_link_end_z;
@object[i].terrain_height = object1.terrain_height;
@object[i].position_start = object1.position_start;
@object[i].position_end = object1.position_end;
@object[i].unlink_y = object1.unlink_y;
@object[i].unlink_z = object1.unlink_z;
@object[i].random_position = object1.random_position;
@object[i].scaleCurve = new AnimationCurve(object1.scaleCurve.keys);
@object[i].lookAtObject = object1.lookAtObject;
@object[i].includeScale = object1.includeScale;
@object[i].raycast = object1.raycast;
@object[i].layerMask = object1.layerMask;
@object[i].ray_length = object1.ray_length;
@object[i].cast_height = object1.cast_height;
@object[i].ray_radius = object1.ray_radius;
@object[i].ray_direction = object1.ray_direction;
@object[i].raycast_mode = object1.raycast_mode;
}
if (!(@object[i].color_object[0] <= 0.5f))
{
@object[i].color_object = @object[i].color_object + new Color(-0.5f, 0f, -0.5f, 0f);
}
}
}
}
public virtual void set_rotation(object_class object1, int object_number, bool all)
{
for (int i = 0; i < @object.Count; i++)
{
if (object_value.active[i] || all)
{
if (i != object_number)
{
@object[i].rotation_steps = object1.rotation_steps;
@object[i].rotation_step = object1.rotation_step;
@object[i].rotation_map = copy_rotation_map(object1.rotation_map);
}
if (!(@object[i].color_object[0] <= 0.5f))
{
@object[i].color_object = @object[i].color_object + new Color(-0.5f, 0f, -0.5f, 0f);
}
}
}
}
public virtual void set_distance(object_class object1, int object_number, bool all)
{
for (int i = 0; i < @object.Count; i++)
{
if (object_value.active[i] || all)
{
if (i != object_number)
{
@object[i].min_distance = object1.min_distance;
@object[i].distance_level = object1.distance_level;
@object[i].distance_mode = object1.distance_mode;
@object[i].distance_rotation_mode = object1.distance_rotation_mode;
@object[i].distance_include_scale = object1.distance_include_scale;
@object[i].distance_include_scale_group = object1.distance_include_scale_group;
}
if (!(@object[i].color_object[0] <= 0.5f))
{
@object[i].color_object = @object[i].color_object + new Color(-0.5f, 0f, -0.5f, 0f);
}
}
}
}
public virtual void swap_object(int object_number, int object_number2)
{
if (object_number2 > -1 && object_number2 < @object.Count)
{
object_class value = @object[object_number];
float value2 = object_value.value[object_number];
bool value3 = object_value.active[object_number];
@object[object_number] = @object[object_number2];
@object[object_number2] = value;
if (!(@object[object_number].color_object[0] <= 0.5f))
{
@object[object_number].color_object = @object[object_number].color_object + new Color(-0.5f, 0f, -0.5f, 0f);
}
if (!(@object[object_number2].color_object[0] <= 0.5f))
{
@object[object_number2].color_object = @object[object_number2].color_object + new Color(-0.5f, 0f, -0.5f, 0f);
}
object_value.value[object_number] = object_value.value[object_number2];
object_value.value[object_number2] = value2;
object_value.active[object_number] = object_value.active[object_number2];
object_value.active[object_number2] = value3;
object_value.calc_value();
}
}
public virtual void set_object_text()
{
if (@object.Count > 1)
{
object_text = "Objects(" + @object.Count + ")";
}
else
{
object_text = "Object";
}
}
public virtual rotation_map_class copy_rotation_map(rotation_map_class rotation_map)
{
rotation_map_class rotation_map_class2 = null;
GameObject gameObject = new GameObject();
save_template save_template2 = (save_template)gameObject.AddComponent(typeof(save_template));
save_template2.rotation_map = rotation_map;
GameObject gameObject2 = UnityEngine.Object.Instantiate(gameObject);
UnityEngine.Object.DestroyImmediate(gameObject);
save_template2 = (save_template)gameObject2.GetComponent(typeof(save_template));
rotation_map_class2 = save_template2.rotation_map;
UnityEngine.Object.DestroyImmediate(gameObject2);
return rotation_map_class2;
}
}