열차 목업의 내부 확인용 프로젝트
smchoi
2024-07-24 ff74c0073046f0e086eb7d355950bda39937c92c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
 
using System;
using System.Collections;
using UnityEngine;
using UnityEngine.Events;
 
 
 
public abstract class Motion : MonoBehaviour
{
 
    private int m_index = -1;
    public int index
    {
        get { return m_index; }
        set { m_index = value; }
    }
    public SelectObject selectObject;
 
    static public string animParameter = "mode";
    [SerializeField]
    private Motion prevMotion;
 
 
    public Transform MotionTransform { get { return transform; } }
 
 
 
    private void Start()
    {
        //ModelTypeManager.Inst.OnChangeModel.AddListener((value) => OnChangeModel());
    }
 
 
    public Motion GetCurrentMotion()
    {
        return prevMotion;
    }
    public abstract IEnumerator Play();
    public abstract IEnumerator ReversePlay();
    public virtual IEnumerator PlayAndNext()
    {
        yield return StartCoroutine(Play());
 
    }
 
    public virtual IEnumerator PlayAndNext(Action<bool> callBack)
    {
 
        callBack(false);
        yield return StartCoroutine(Play());
 
 
        callBack(true);
    }
 
 
 
    public virtual IEnumerator PrevReverse()
    {
 
        yield return StartCoroutine(prevMotion.PrevReverse());
 
 
    }
 
 
    public virtual IEnumerator PrevReverse(Action<bool> callBack)
    {
        callBack(false);
 
 
        yield return StartCoroutine(prevMotion.PrevReverse(callBack));
        yield break;
 
    }
 
    public virtual void Initialize()
    {
 
    }
 
 
 
    private void Awake()
    {
        Initialize();
    }
 
 
 
}