- LocalizationManager: 新增翻译表(SetFormatted/SetDuration/LocalizeOperateMsg) - LoginPanel: InputField placeholder本地化、字体颜色保持 - HistoryPanel: 用时数据本地化、placeholder本地化 - RecordDetailPanel: 操作详情消息本地化(LanguageChanged重建) - AppraiseWindowBase: 评价等级本地化、操作消息重建 - EditorAppraiser: 所有评估消息改用InjectOperateMsgLocalized - StudentOperateRecorder: 新增InjectOperateMsgLocalized方法 - LocalizationLanguageTestBar: 单例模式、ScreenSpaceOverlay筛选 - 字体切换时保留颜色和verticalOverflow
54 lines
1.5 KiB
Plaintext
54 lines
1.5 KiB
Plaintext
namespace VRTK.Examples
|
|
{
|
|
using UnityEngine;
|
|
|
|
public class Menu_Object_Spawner : VRTK_InteractableObject
|
|
{
|
|
public enum PrimitiveTypes
|
|
{
|
|
Cube,
|
|
Sphere
|
|
}
|
|
|
|
public PrimitiveTypes shape;
|
|
private Color selectedColor;
|
|
|
|
public void SetSelectedColor(Color color)
|
|
{
|
|
selectedColor = color;
|
|
gameObject.GetComponent<MeshRenderer>().material.color = color;
|
|
}
|
|
|
|
public override void StartUsing(VRTK_InteractUse usingObject)
|
|
{
|
|
base.StartUsing(usingObject);
|
|
|
|
if (shape == PrimitiveTypes.Cube)
|
|
{
|
|
CreateShape(PrimitiveType.Cube, selectedColor);
|
|
}
|
|
else if (shape == PrimitiveTypes.Sphere)
|
|
{
|
|
CreateShape(PrimitiveType.Sphere, selectedColor);
|
|
}
|
|
ResetMenuItems();
|
|
}
|
|
|
|
private void CreateShape(PrimitiveType shape, Color color)
|
|
{
|
|
GameObject obj = GameObject.CreatePrimitive(shape);
|
|
obj.transform.position = transform.position;
|
|
obj.transform.localScale = new Vector3(0.1f, 0.1f, 0.1f);
|
|
obj.GetComponent<MeshRenderer>().material.color = color;
|
|
obj.AddComponent<Rigidbody>();
|
|
}
|
|
|
|
private void ResetMenuItems()
|
|
{
|
|
foreach (Menu_Object_Spawner menuObjectSpawner in FindObjectsOfType<Menu_Object_Spawner>())
|
|
{
|
|
menuObjectSpawner.StopUsing();
|
|
}
|
|
}
|
|
}
|
|
} |