コード例 #1
0
    // Token: 0x06003AB2 RID: 15026 RVA: 0x0012860C File Offset: 0x00126A0C
    public bool UpdatePlayback(ref ArrayList entries)
    {
        if (!this.IsPlaying())
        {
            return(false);
        }
        OVRLipSyncContextSequencer.Sequence sequence = (OVRLipSyncContextSequencer.Sequence) this.sequences[this.currentSequence];
        if (this.currentSequenceEntry >= sequence.entries.Count)
        {
            this.currentSequence      = -1;
            this.currentSequenceEntry = 0;
            return(false);
        }
        float num = Time.time - this.startTime;

        OVRLipSyncContextSequencer.SequenceEntry sequenceEntry = (OVRLipSyncContextSequencer.SequenceEntry)sequence.entries[this.currentSequenceEntry];
        float timestamp = sequenceEntry.timestamp;

        while (num > timestamp)
        {
            if (sequenceEntry.action != -1)
            {
                entries.Add(sequenceEntry.Clone());
            }
            this.currentSequenceEntry++;
            if (this.currentSequenceEntry >= sequence.entries.Count)
            {
                this.currentSequence = -1;
                return(false);
            }
            sequenceEntry = (OVRLipSyncContextSequencer.SequenceEntry)sequence.entries[this.currentSequenceEntry];
            timestamp     = sequenceEntry.timestamp;
        }
        return(true);
    }
コード例 #2
0
    // Token: 0x06003AA9 RID: 15017 RVA: 0x00127FF4 File Offset: 0x001263F4
    public bool LoadSequence(string sequenceName)
    {
        for (int i = 0; i < this.sequences.Count; i++)
        {
            if (((OVRLipSyncContextSequencer.Sequence) this.sequences[i]).name == sequenceName)
            {
                this.currentSequence = i;
                return(true);
            }
        }
        if (PlayerPrefs.GetString(sequenceName, string.Empty) == string.Empty)
        {
            Debug.Log("OVRLipSyncContextSequencer WARNING: Cannot load sequence " + sequenceName);
            return(false);
        }
        OVRLipSyncContextSequencer.Sequence sequence = new OVRLipSyncContextSequencer.Sequence(0);
        sequence.name = sequenceName;
        string text = string.Empty;

        text                = sequenceName + "_INFO";
        sequence.info       = PlayerPrefs.GetString(text, "NO INFO");
        text                = sequenceName + "_NE";
        sequence.numEntries = PlayerPrefs.GetInt(text, 0);
        for (int j = 0; j < sequence.numEntries; j++)
        {
            OVRLipSyncContextSequencer.SequenceEntry sequenceEntry = new OVRLipSyncContextSequencer.SequenceEntry(0);
            text  = sequenceName + "_E_";
            text += j;
            string text2 = string.Empty;
            text2  = text;
            text2 += "_TIMESTAMP";
            sequenceEntry.timestamp = PlayerPrefs.GetFloat(text2, 0f);
            text2  = text;
            text2 += "_ACTION";
            sequenceEntry.action = PlayerPrefs.GetInt(text2, -1);
            text2  = text;
            text2 += "_DATA1";
            sequenceEntry.data1 = PlayerPrefs.GetInt(text2, 0);
            text2  = text;
            text2 += "_DATA2";
            sequenceEntry.data2 = PlayerPrefs.GetInt(text2, 0);
            text2  = text;
            text2 += "_DATA3";
            sequenceEntry.data3 = PlayerPrefs.GetInt(text2, 0);
            sequence.entries.Add(sequenceEntry);
        }
        if (sequence.numEntries != sequence.entries.Count)
        {
            Debug.Log("OVRLipSyncContextSequencer WARNING: " + sequenceName + " might be corrupted.");
            return(false);
        }
        this.sequences.Add(sequence);
        return(true);
    }
コード例 #3
0
 // Token: 0x06003AB6 RID: 15030 RVA: 0x001287BC File Offset: 0x00126BBC
 public OVRLipSyncContextSequencer.Sequence Clone()
 {
     OVRLipSyncContextSequencer.Sequence result = new OVRLipSyncContextSequencer.Sequence(0);
     result.name       = this.name;
     result.info       = this.info;
     result.numEntries = this.numEntries;
     for (int i = 0; i < this.entries.Count; i++)
     {
         OVRLipSyncContextSequencer.SequenceEntry sequenceEntry = (OVRLipSyncContextSequencer.SequenceEntry) this.entries[i];
         result.entries.Add(sequenceEntry.Clone());
     }
     return(result);
 }
コード例 #4
0
    // Token: 0x06003AAA RID: 15018 RVA: 0x0012820C File Offset: 0x0012660C
    public bool SaveSequence(string sequenceName)
    {
        int num = -1;

        for (int i = 0; i < this.sequences.Count; i++)
        {
            if (((OVRLipSyncContextSequencer.Sequence) this.sequences[i]).name == sequenceName)
            {
                num = i;
                break;
            }
        }
        if (num == -1)
        {
            Debug.Log("OVRPhonemeContextSequencer WARNING: " + sequenceName + " does not exist, cannot save.");
            return(false);
        }
        OVRLipSyncContextSequencer.Sequence sequence = (OVRLipSyncContextSequencer.Sequence) this.sequences[num];
        PlayerPrefs.SetString(sequenceName, sequence.name);
        string text = sequenceName + "_INFO";

        PlayerPrefs.SetString(text, sequence.info);
        text = sequenceName + "_NE";
        PlayerPrefs.SetInt(text, sequence.numEntries);
        for (int j = 0; j < sequence.entries.Count; j++)
        {
            OVRLipSyncContextSequencer.SequenceEntry sequenceEntry = (OVRLipSyncContextSequencer.SequenceEntry)sequence.entries[j];
            text  = sequenceName + "_E_";
            text += j;
            string text2 = string.Empty;
            text2  = text;
            text2 += "_TIMESTAMP";
            PlayerPrefs.SetFloat(text2, sequenceEntry.timestamp);
            text2  = text;
            text2 += "_ACTION";
            PlayerPrefs.SetInt(text2, sequenceEntry.action);
            text2  = text;
            text2 += "_DATA1";
            PlayerPrefs.SetInt(text2, sequenceEntry.data1);
            text2  = text;
            text2 += "_DATA2";
            PlayerPrefs.SetInt(text2, sequenceEntry.data2);
            text2  = text;
            text2 += "_DATA3";
            PlayerPrefs.SetInt(text2, sequenceEntry.data3);
        }
        return(true);
    }