Есть система снятия навесного с авто. Надо дорабатывать. Машины все добавлены

This commit is contained in:
bybohka 2026-10-05 05:00:16 +03:00
parent a8238ab49e
commit 3e13180e34
15 changed files with 106236 additions and 141 deletions

View File

@ -1,17 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd31d9fac3d42f78a28531811779ce9, type: 3}
m_Name: Back_Bamper_Sedan
m_EditorClassIdentifier: Assembly-CSharp::CarPartData
partName: "\u0417\u0430\u0434\u043D\u0438\u0439 \u0431\u0430\u043C\u043F\u0435\u0440"
basePrice: 150
condition: 100

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 7081811a078872e40a064e5755902954
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,17 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd31d9fac3d42f78a28531811779ce9, type: 3}
m_Name: Fender_Pickup
m_EditorClassIdentifier: Assembly-CSharp::CarPartData
partName: "\u041A\u0440\u044B\u043B\u043E"
basePrice: 150
condition: 100

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: ae46e2f63583e8d4ca5c0978226b5470
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,17 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd31d9fac3d42f78a28531811779ce9, type: 3}
m_Name: Front_Bamper_Sedan
m_EditorClassIdentifier: Assembly-CSharp::CarPartData
partName: "\u041F\u0435\u0440\u0435\u0434\u043D\u0438\u0439 \u0431\u0430\u043C\u043F\u0435\u0440"
basePrice: 150
condition: 100

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 90fdc50b54d3296499d27fe2475a4719
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -1,14 +1,14 @@
using System.Collections;
using UnityEngine;
[RequireComponent(typeof(CarPartInteractable))]
[RequireComponent(typeof(CarPart))]
public class CarPartAnimator : MonoBehaviour
{
[Header("Настройки открытия")]
[SerializeField] private Vector3 openRotation; // Например: (0, 0, 60) для капота
[SerializeField] private float speed = 5f;
private CarPartInteractable interactable;
public bool IsOpen => isOpen;
private Quaternion closedRot;
private Quaternion openRot;
private bool isOpen = false;
@ -16,27 +16,12 @@ public class CarPartAnimator : MonoBehaviour
private void Awake()
{
interactable = GetComponent<CarPartInteractable>();
// Запоминаем изначальное (закрытое) положение детали
closedRot = transform.localRotation;
// Конвертируем введенные углы Эйлера в Кватернион
openRot = Quaternion.Euler(openRotation);
openRot = closedRot * Quaternion.Euler(openRotation);
}
// Подписываемся при включении объекта
private void OnEnable()
{
interactable.OnInteract += TogglePart;
}
// ОТПИСЫВАЕМСЯ при выключении/удалении (Критически важно!)
private void OnDisable()
{
interactable.OnInteract -= TogglePart;
}
private void TogglePart()
public void TogglePart()
{
isOpen = !isOpen;
@ -46,6 +31,13 @@ public class CarPartAnimator : MonoBehaviour
animationCoroutine = StartCoroutine(AnimatePart(isOpen ? openRot : closedRot));
}
public void ResetToClosed()
{
isOpen = false;
if (animationCoroutine != null) StopCoroutine(animationCoroutine);
transform.localRotation = closedRot;
}
private IEnumerator AnimatePart(Quaternion targetRot)
{

View File

@ -1,18 +0,0 @@
using UnityEngine;
using System;
public class CarPartInteractable : MonoBehaviour, IInteractable
{
[SerializeField] private string promptMessage = "Открыть (E)";
// Чистое C# событие
public event Action OnInteract;
public string GetPrompt() => promptMessage;
public void Interact(GameObject interactor)
{
// Вызываем событие, если на него кто-то подписан
OnInteract?.Invoke();
}
}

View File

@ -1,3 +0,0 @@
fileFormatVersion: 2
guid: b3e2d09be7614eb280964996788872ed
timeCreated: 1789942997

View File

@ -2,8 +2,7 @@ using UnityEngine;
public enum PartState { Installed, InHand, Dropped }
[RequireComponent(typeof(Collider))]
public class CarPart : MonoBehaviour, IInteractable
public class CarPart : MonoBehaviour, IInteractable, ISecondaryInteractable
{
[Header("Данные")]
[SerializeField] private CarPartData partData;
@ -14,6 +13,7 @@ public class CarPart : MonoBehaviour, IInteractable
[Tooltip("Поворот детали в руках (например, если бампер берется боком)")]
[SerializeField] private Vector3 inHandRotationOffset = Vector3.zero;
private CarPartAnimator partAnimator;
private PartState currentState = PartState.Installed;
private Transform originalParent;
private Vector3 originalLocalPos;
@ -31,6 +31,7 @@ public class CarPart : MonoBehaviour, IInteractable
private void Awake()
{
partCollider = GetComponent<Collider>();
partAnimator = GetComponent<CarPartAnimator>();
originalParent = transform.parent;
originalLocalPos = transform.localPosition;
@ -44,15 +45,58 @@ public class CarPart : MonoBehaviour, IInteractable
{
if (partData == null) return "Деталь (E)";
return currentState switch
if (currentState == PartState.Installed)
{
PartState.Installed => $"Снять {partData.partName} (E)",
PartState.Dropped => $"Взять {partData.partName} (E)",
_ => string.Empty
};
// Если на детали есть аниматор — выводим подсказку с открытием
if (partAnimator != null)
{
string action = partAnimator.IsOpen ? "Закрыть" : "Открыть";
return $"[E] {action} {partData.partName} | [R] Снять";
}
return $"Снять {partData.partName} (E)";
}
if (currentState == PartState.Dropped)
{
return $"Взять {partData.partName} (E)";
}
return string.Empty;
}
public void Interact(GameObject interactor)
{
if (currentState == PartState.Installed)
{
if (partAnimator != null)
{
// Нажали E — открываем или закрываем
partAnimator.TogglePart();
}
else
{
// Обычная деталь (бампер) сразу снимается
TakeToHands(interactor);
}
}
else if (currentState == PartState.Dropped)
{
TakeToHands(interactor);
}
}
// Вызывается при нажатии R (вторичное действие)
public void SecondaryInteract(GameObject interactor)
{
if (currentState == PartState.Installed)
{
TakeToHands(interactor);
}
}
// Вынесенный общий метод взятия в руки
private void TakeToHands(GameObject interactor)
{
PlayerHands hands = interactor.GetComponent<PlayerHands>();
if (hands == null) hands = interactor.GetComponentInParent<PlayerHands>();
@ -61,16 +105,11 @@ public class CarPart : MonoBehaviour, IInteractable
if (currentState == PartState.Installed)
{
// 1. Создаем зону для обратной установки на машине
if (partAnimator != null) partAnimator.ResetToClosed();
CreateMountZone();
// 2. Берем сразу в руки
hands.PickUp(this);
}
else if (currentState == PartState.Dropped)
{
// Подбираем деталь с земли
hands.PickUp(this);
}
hands.PickUp(this);
}
public void OnPickedUp(Transform holdPoint)

View File

@ -0,0 +1,6 @@
using UnityEngine;
public interface ISecondaryInteractable
{
void SecondaryInteract(GameObject interactor);
}

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: a19e1c56cc01408881999f83291b4acf
timeCreated: 1791155204

View File

@ -4,7 +4,9 @@ public class PlayerInteractor : MonoBehaviour
{
[SerializeField] private float interactRange = 3f;
[SerializeField] private LayerMask interactableLayer; // Создайте слой "Interactable" в Unity
[SerializeField] private KeyCode primaryKey = KeyCode.E;
[SerializeField] private KeyCode secondaryKey = KeyCode.R;
[Header("References")]
[SerializeField] private UIManager uiManager;
@ -19,18 +21,41 @@ public class PlayerInteractor : MonoBehaviour
if (interactable != null)
{
uiManager.ShowPrompt(interactable.GetPrompt());
if (!string.IsNullOrEmpty(interactable.GetPrompt()) && uiManager!=null)
{
uiManager.ShowPrompt(interactable.GetPrompt());
}
else if (uiManager != null)
{
uiManager.HidePrompt();
}
if (Input.GetKeyDown(KeyCode.E))
if (Input.GetKeyDown(primaryKey))
{
interactable.Interact(transform.root.gameObject);
uiManager.HidePrompt();
}
if (Input.GetKeyDown(secondaryKey))
{
ISecondaryInteractable secondary = hit.collider.GetComponentInParent<ISecondaryInteractable>();
secondary?.SecondaryInteract(transform.root.gameObject);
}
return;
}
}
uiManager.HidePrompt();
if (uiManager != null)
{
uiManager.HidePrompt();
}
}
private void OnDisable()
{
if (uiManager != null)
{
uiManager.HidePrompt();
}
}
}

View File

@ -3792,6 +3792,486 @@ MonoBehaviour:
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 1013
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -0.9658203
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 994
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 1013
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -1.8896484
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 997
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 1013
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -1.8896484
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 1004
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 1013
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -1.8896484
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 1011
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 1013
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -0.9658203
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 1012
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 1013
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -0.9658203
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 1024
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 965
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0.9658203
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 980
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 965
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -1.8896484
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 981
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 965
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -2.9394531
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 984
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 965
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 2.8554688
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 1000
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 965
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0.9658203
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 1007
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 965
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 1.8896484
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 1012
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 962
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -1.8896484
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 961
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 962
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -0.9658203
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 968
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 962
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -0.9658203
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 975
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 962
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -0.9658203
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 978
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 962
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -3.8632812
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 979
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 962
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -1.9736328
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 980
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 962
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -0.9658203
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 981
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 962
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -1.8896484
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 982
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 962
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -3.8632812
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 984
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 962
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -2.8554688
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 987
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 962
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -0.9658203
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 990
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 962
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -0.9658203
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 992
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 962
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -0.9658203
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 1004
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 962
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -1.8896484
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 1012
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 1023
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -1.8896484
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 997
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 1023
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -0.9658203
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 999
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 1023
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -1.8896484
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 1004
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 1023
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -0.9658203
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 1005
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 1023
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -1.8896484
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 1011
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
- m_FirstAdjustmentRecord:
m_GlyphIndex: 1023
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: -0.9658203
m_YAdvance: 0
m_SecondAdjustmentRecord:
m_GlyphIndex: 1014
m_GlyphValueRecord:
m_XPlacement: 0
m_YPlacement: 0
m_XAdvance: 0
m_YAdvance: 0
m_FeatureLookupFlags: 0
m_MarkToBaseAdjustmentRecords: []
m_MarkToMarkAdjustmentRecords: []
m_ShouldReimportFontFeatures: 0