Есть система снятия навесного с авто. Надо дорабатывать. Машины все добавлены
This commit is contained in:
parent
a8238ab49e
commit
3e13180e34
@ -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
|
|
||||||
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 7081811a078872e40a064e5755902954
|
|
||||||
NativeFormatImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
mainObjectFileID: 11400000
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@ -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
|
|
||||||
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: ae46e2f63583e8d4ca5c0978226b5470
|
|
||||||
NativeFormatImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
mainObjectFileID: 11400000
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@ -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
|
|
||||||
@ -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
@ -1,14 +1,14 @@
|
|||||||
using System.Collections;
|
using System.Collections;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
[RequireComponent(typeof(CarPartInteractable))]
|
[RequireComponent(typeof(CarPart))]
|
||||||
public class CarPartAnimator : MonoBehaviour
|
public class CarPartAnimator : MonoBehaviour
|
||||||
{
|
{
|
||||||
[Header("Настройки открытия")]
|
[Header("Настройки открытия")]
|
||||||
[SerializeField] private Vector3 openRotation; // Например: (0, 0, 60) для капота
|
[SerializeField] private Vector3 openRotation; // Например: (0, 0, 60) для капота
|
||||||
[SerializeField] private float speed = 5f;
|
[SerializeField] private float speed = 5f;
|
||||||
|
|
||||||
private CarPartInteractable interactable;
|
public bool IsOpen => isOpen;
|
||||||
private Quaternion closedRot;
|
private Quaternion closedRot;
|
||||||
private Quaternion openRot;
|
private Quaternion openRot;
|
||||||
private bool isOpen = false;
|
private bool isOpen = false;
|
||||||
@ -16,27 +16,12 @@ public class CarPartAnimator : MonoBehaviour
|
|||||||
|
|
||||||
private void Awake()
|
private void Awake()
|
||||||
{
|
{
|
||||||
interactable = GetComponent<CarPartInteractable>();
|
|
||||||
|
|
||||||
// Запоминаем изначальное (закрытое) положение детали
|
|
||||||
closedRot = transform.localRotation;
|
closedRot = transform.localRotation;
|
||||||
// Конвертируем введенные углы Эйлера в Кватернион
|
// Конвертируем введенные углы Эйлера в Кватернион
|
||||||
openRot = Quaternion.Euler(openRotation);
|
openRot = closedRot * Quaternion.Euler(openRotation);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Подписываемся при включении объекта
|
public void TogglePart()
|
||||||
private void OnEnable()
|
|
||||||
{
|
|
||||||
interactable.OnInteract += TogglePart;
|
|
||||||
}
|
|
||||||
|
|
||||||
// ОТПИСЫВАЕМСЯ при выключении/удалении (Критически важно!)
|
|
||||||
private void OnDisable()
|
|
||||||
{
|
|
||||||
interactable.OnInteract -= TogglePart;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void TogglePart()
|
|
||||||
{
|
{
|
||||||
isOpen = !isOpen;
|
isOpen = !isOpen;
|
||||||
|
|
||||||
@ -46,6 +31,13 @@ public class CarPartAnimator : MonoBehaviour
|
|||||||
|
|
||||||
animationCoroutine = StartCoroutine(AnimatePart(isOpen ? openRot : closedRot));
|
animationCoroutine = StartCoroutine(AnimatePart(isOpen ? openRot : closedRot));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void ResetToClosed()
|
||||||
|
{
|
||||||
|
isOpen = false;
|
||||||
|
if (animationCoroutine != null) StopCoroutine(animationCoroutine);
|
||||||
|
transform.localRotation = closedRot;
|
||||||
|
}
|
||||||
|
|
||||||
private IEnumerator AnimatePart(Quaternion targetRot)
|
private IEnumerator AnimatePart(Quaternion targetRot)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -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();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: b3e2d09be7614eb280964996788872ed
|
|
||||||
timeCreated: 1789942997
|
|
||||||
@ -2,8 +2,7 @@ using UnityEngine;
|
|||||||
|
|
||||||
public enum PartState { Installed, InHand, Dropped }
|
public enum PartState { Installed, InHand, Dropped }
|
||||||
|
|
||||||
[RequireComponent(typeof(Collider))]
|
public class CarPart : MonoBehaviour, IInteractable, ISecondaryInteractable
|
||||||
public class CarPart : MonoBehaviour, IInteractable
|
|
||||||
{
|
{
|
||||||
[Header("Данные")]
|
[Header("Данные")]
|
||||||
[SerializeField] private CarPartData partData;
|
[SerializeField] private CarPartData partData;
|
||||||
@ -14,6 +13,7 @@ public class CarPart : MonoBehaviour, IInteractable
|
|||||||
[Tooltip("Поворот детали в руках (например, если бампер берется боком)")]
|
[Tooltip("Поворот детали в руках (например, если бампер берется боком)")]
|
||||||
[SerializeField] private Vector3 inHandRotationOffset = Vector3.zero;
|
[SerializeField] private Vector3 inHandRotationOffset = Vector3.zero;
|
||||||
|
|
||||||
|
private CarPartAnimator partAnimator;
|
||||||
private PartState currentState = PartState.Installed;
|
private PartState currentState = PartState.Installed;
|
||||||
private Transform originalParent;
|
private Transform originalParent;
|
||||||
private Vector3 originalLocalPos;
|
private Vector3 originalLocalPos;
|
||||||
@ -31,6 +31,7 @@ public class CarPart : MonoBehaviour, IInteractable
|
|||||||
private void Awake()
|
private void Awake()
|
||||||
{
|
{
|
||||||
partCollider = GetComponent<Collider>();
|
partCollider = GetComponent<Collider>();
|
||||||
|
partAnimator = GetComponent<CarPartAnimator>();
|
||||||
|
|
||||||
originalParent = transform.parent;
|
originalParent = transform.parent;
|
||||||
originalLocalPos = transform.localPosition;
|
originalLocalPos = transform.localPosition;
|
||||||
@ -44,15 +45,58 @@ public class CarPart : MonoBehaviour, IInteractable
|
|||||||
{
|
{
|
||||||
if (partData == null) return "Деталь (E)";
|
if (partData == null) return "Деталь (E)";
|
||||||
|
|
||||||
return currentState switch
|
if (currentState == PartState.Installed)
|
||||||
{
|
{
|
||||||
PartState.Installed => $"Снять {partData.partName} (E)",
|
// Если на детали есть аниматор — выводим подсказку с открытием
|
||||||
PartState.Dropped => $"Взять {partData.partName} (E)",
|
if (partAnimator != null)
|
||||||
_ => string.Empty
|
{
|
||||||
};
|
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)
|
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>();
|
PlayerHands hands = interactor.GetComponent<PlayerHands>();
|
||||||
if (hands == null) hands = interactor.GetComponentInParent<PlayerHands>();
|
if (hands == null) hands = interactor.GetComponentInParent<PlayerHands>();
|
||||||
@ -61,16 +105,11 @@ public class CarPart : MonoBehaviour, IInteractable
|
|||||||
|
|
||||||
if (currentState == PartState.Installed)
|
if (currentState == PartState.Installed)
|
||||||
{
|
{
|
||||||
// 1. Создаем зону для обратной установки на машине
|
if (partAnimator != null) partAnimator.ResetToClosed();
|
||||||
CreateMountZone();
|
CreateMountZone();
|
||||||
// 2. Берем сразу в руки
|
|
||||||
hands.PickUp(this);
|
|
||||||
}
|
|
||||||
else if (currentState == PartState.Dropped)
|
|
||||||
{
|
|
||||||
// Подбираем деталь с земли
|
|
||||||
hands.PickUp(this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
hands.PickUp(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnPickedUp(Transform holdPoint)
|
public void OnPickedUp(Transform holdPoint)
|
||||||
|
|||||||
6
Assets/Scripts/Interface/ISecondaryInteractable.cs
Normal file
6
Assets/Scripts/Interface/ISecondaryInteractable.cs
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
public interface ISecondaryInteractable
|
||||||
|
{
|
||||||
|
void SecondaryInteract(GameObject interactor);
|
||||||
|
}
|
||||||
3
Assets/Scripts/Interface/ISecondaryInteractable.cs.meta
Normal file
3
Assets/Scripts/Interface/ISecondaryInteractable.cs.meta
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: a19e1c56cc01408881999f83291b4acf
|
||||||
|
timeCreated: 1791155204
|
||||||
@ -4,7 +4,9 @@ public class PlayerInteractor : MonoBehaviour
|
|||||||
{
|
{
|
||||||
[SerializeField] private float interactRange = 3f;
|
[SerializeField] private float interactRange = 3f;
|
||||||
[SerializeField] private LayerMask interactableLayer; // Создайте слой "Interactable" в Unity
|
[SerializeField] private LayerMask interactableLayer; // Создайте слой "Interactable" в Unity
|
||||||
|
[SerializeField] private KeyCode primaryKey = KeyCode.E;
|
||||||
|
[SerializeField] private KeyCode secondaryKey = KeyCode.R;
|
||||||
|
|
||||||
[Header("References")]
|
[Header("References")]
|
||||||
[SerializeField] private UIManager uiManager;
|
[SerializeField] private UIManager uiManager;
|
||||||
|
|
||||||
@ -19,18 +21,41 @@ public class PlayerInteractor : MonoBehaviour
|
|||||||
|
|
||||||
if (interactable != null)
|
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);
|
interactable.Interact(transform.root.gameObject);
|
||||||
uiManager.HidePrompt();
|
}
|
||||||
|
if (Input.GetKeyDown(secondaryKey))
|
||||||
|
{
|
||||||
|
ISecondaryInteractable secondary = hit.collider.GetComponentInParent<ISecondaryInteractable>();
|
||||||
|
secondary?.SecondaryInteract(transform.root.gameObject);
|
||||||
}
|
}
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
uiManager.HidePrompt();
|
if (uiManager != null)
|
||||||
|
{
|
||||||
|
uiManager.HidePrompt();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDisable()
|
||||||
|
{
|
||||||
|
if (uiManager != null)
|
||||||
|
{
|
||||||
|
uiManager.HidePrompt();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -3792,6 +3792,486 @@ MonoBehaviour:
|
|||||||
m_XAdvance: 0
|
m_XAdvance: 0
|
||||||
m_YAdvance: 0
|
m_YAdvance: 0
|
||||||
m_FeatureLookupFlags: 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_MarkToBaseAdjustmentRecords: []
|
||||||
m_MarkToMarkAdjustmentRecords: []
|
m_MarkToMarkAdjustmentRecords: []
|
||||||
m_ShouldReimportFontFeatures: 0
|
m_ShouldReimportFontFeatures: 0
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user