public static int constructor(IntPtr l)
    {
        int result;

        try
        {
            int num = LuaDLL.lua_gettop(l);
            if (num == 1)
            {
                TurnDanmaku o = new TurnDanmaku();
                LuaObject.pushValue(l, true);
                LuaObject.pushValue(l, o);
                result = 2;
            }
            else if (num == 2)
            {
                TurnDanmaku other;
                LuaObject.checkType <TurnDanmaku>(l, 2, out other);
                TurnDanmaku o = new TurnDanmaku(other);
                LuaObject.pushValue(l, true);
                LuaObject.pushValue(l, o);
                result = 2;
            }
            else
            {
                result = LuaObject.error(l, "New object failed.");
            }
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
        // Token: 0x0600A71A RID: 42778 RVA: 0x002ECDC0 File Offset: 0x002EAFC0
        public void ShowCurTurnDanmaku(int turn)
        {
            if (!BJLuaObjHelper.IsSkipLuaHotfix && this.TryInitHotFix("") && this.m_ShowCurTurnDanmakuInt32_hotfix != null)
            {
                this.m_ShowCurTurnDanmakuInt32_hotfix.call(new object[]
                {
                    this,
                    turn2
                });
                return;
            }
            BJLuaObjHelper.IsSkipLuaHotfix = false;
            int          turn         = turn2;
            LevelDanmaku levelDanmaku = this.m_playerContext.GetLevelDanmaku();

            if (levelDanmaku != null)
            {
                TurnDanmaku turnDanmaku = levelDanmaku.Turns.Find((TurnDanmaku danmakuTurn) => danmakuTurn.Turn == turn);
                if (turnDanmaku != null)
                {
                    List <DanmakuEntry> entries = turnDanmaku.Entries;
                    if (entries == null || entries.Count == 0)
                    {
                        return;
                    }
                    List <DanmakuEntry> list = new List <DanmakuEntry>();
                    list.AddRange(entries);
                    list.Reverse();
                    base.StartCoroutine(this.Co_ShowDanmakus(list));
                }
            }
        }
Esempio n. 3
0
        // Token: 0x06006F37 RID: 28471 RVA: 0x001F1E8C File Offset: 0x001F008C
        private void AddPostDanmakuEntryToLocalLevelDanmaku(PostDanmakuEntry entry)
        {
            if (!BJLuaObjHelper.IsSkipLuaHotfix && this.TryInitHotFix("") && this.m_AddPostDanmakuEntryToLocalLevelDanmakuPostDanmakuEntry_hotfix != null)
            {
                this.m_AddPostDanmakuEntryToLocalLevelDanmakuPostDanmakuEntry_hotfix.call(new object[]
                {
                    this,
                    entry2
                });
                return;
            }
            BJLuaObjHelper.IsSkipLuaHotfix = false;
            PostDanmakuEntry      entry         = entry2;
            ProjectLPlayerContext playerContext = GameManager.Instance.PlayerContext as ProjectLPlayerContext;

            if (this.m_levelDanmaku != null)
            {
                TurnDanmaku turnDanmaku = this.m_levelDanmaku.Turns.Find((TurnDanmaku danmakuTurn) => danmakuTurn.Turn == entry.Turn);
                if (turnDanmaku == null)
                {
                    this.AddTurnDanmakuToLevelDanmaku(entry);
                }
                else
                {
                    List <DanmakuEntry> entries = turnDanmaku.Entries;
                    entries.Reverse();
                    DanmakuEntry danmakuEntry = entries.Find((DanmakuEntry danmaku) => playerContext.IsMe(danmaku.UserId));
                    entries.Reverse();
                    if (danmakuEntry != null && this.m_newSendDanmakuTurnList.Contains(turnDanmaku.Turn))
                    {
                        danmakuEntry.Content = entry.Content;
                    }
                    else
                    {
                        this.m_newSendDanmakuTurnList.Add(turnDanmaku.Turn);
                        DanmakuEntry item = this.CreateDanmakuEntry(entry);
                        entries.Add(item);
                    }
                }
            }
            else
            {
                this.m_levelDanmaku = new LevelDanmaku();
                this.AddTurnDanmakuToLevelDanmaku(entry);
            }
        }
    public static int get_Entries(IntPtr l)
    {
        int result;

        try
        {
            TurnDanmaku turnDanmaku = (TurnDanmaku)LuaObject.checkSelf(l);
            LuaObject.pushValue(l, true);
            LuaObject.pushValue(l, turnDanmaku.Entries);
            result = 2;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
    public static int TurnDanmakuToPBTurnDanmaku_s(IntPtr l)
    {
        int result;

        try
        {
            TurnDanmaku turnDanmaku;
            LuaObject.checkType <TurnDanmaku>(l, 1, out turnDanmaku);
            ProTurnDanmaku o = TurnDanmaku.TurnDanmakuToPBTurnDanmaku(turnDanmaku);
            LuaObject.pushValue(l, true);
            LuaObject.pushValue(l, o);
            result = 2;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
    public static int set_NextIndex(IntPtr l)
    {
        int result;

        try
        {
            TurnDanmaku turnDanmaku = (TurnDanmaku)LuaObject.checkSelf(l);
            int         nextIndex;
            LuaObject.checkType(l, 2, out nextIndex);
            turnDanmaku.NextIndex = nextIndex;
            LuaObject.pushValue(l, true);
            result = 1;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
    public static int set_Entries(IntPtr l)
    {
        int result;

        try
        {
            TurnDanmaku         turnDanmaku = (TurnDanmaku)LuaObject.checkSelf(l);
            List <DanmakuEntry> entries;
            LuaObject.checkType <List <DanmakuEntry> >(l, 2, out entries);
            turnDanmaku.Entries = entries;
            LuaObject.pushValue(l, true);
            result = 1;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
Esempio n. 8
0
        // Token: 0x06006F34 RID: 28468 RVA: 0x001F1BA0 File Offset: 0x001EFDA0
        private LevelDanmaku BuildLevelDanmakuOrderByTime(LevelDanmaku source)
        {
            if (!BJLuaObjHelper.IsSkipLuaHotfix && this.TryInitHotFix("") && this.m_BuildLevelDanmakuOrderByTimeLevelDanmaku_hotfix != null)
            {
                return((LevelDanmaku)this.m_BuildLevelDanmakuOrderByTimeLevelDanmaku_hotfix.call(new object[]
                {
                    this,
                    source
                }));
            }
            BJLuaObjHelper.IsSkipLuaHotfix = false;
            LevelDanmaku levelDanmaku = new LevelDanmaku();

            foreach (TurnDanmaku turnDanmaku in source.Turns)
            {
                TurnDanmaku turnDanmaku2 = new TurnDanmaku
                {
                    Turn = turnDanmaku.Turn
                };
                levelDanmaku.Turns.Add(turnDanmaku2);
                if (turnDanmaku.Entries.Count > 0)
                {
                    int num  = turnDanmaku.NextIndex % turnDanmaku.Entries.Count;
                    int num2 = num;
                    while (num2 < turnDanmaku.Entries.Count && num2 < this.m_configDataLoader.ConfigableConstId_MaxLevelDanmakuEntryNumsPerTurn)
                    {
                        turnDanmaku2.Entries.Add(turnDanmaku.Entries[num2 % turnDanmaku.Entries.Count]);
                        num2++;
                    }
                    for (int i = 0; i < num; i++)
                    {
                        turnDanmaku2.Entries.Add(turnDanmaku.Entries[i % turnDanmaku.Entries.Count]);
                    }
                }
            }
            return(levelDanmaku);
        }
Esempio n. 9
0
        // Token: 0x06006F38 RID: 28472 RVA: 0x001F1FF8 File Offset: 0x001F01F8
        private void AddTurnDanmakuToLevelDanmaku(PostDanmakuEntry entry)
        {
            if (!BJLuaObjHelper.IsSkipLuaHotfix && this.TryInitHotFix("") && this.m_AddTurnDanmakuToLevelDanmakuPostDanmakuEntry_hotfix != null)
            {
                this.m_AddTurnDanmakuToLevelDanmakuPostDanmakuEntry_hotfix.call(new object[]
                {
                    this,
                    entry
                });
                return;
            }
            BJLuaObjHelper.IsSkipLuaHotfix = false;
            TurnDanmaku turnDanmaku = new TurnDanmaku();

            turnDanmaku.Turn = entry.Turn;
            DanmakuEntry item = this.CreateDanmakuEntry(entry);

            turnDanmaku.Entries.Add(item);
            this.m_levelDanmaku.Turns.Add(turnDanmaku);
            if (!this.m_newSendDanmakuTurnList.Contains(entry.Turn))
            {
                this.m_newSendDanmakuTurnList.Add(entry.Turn);
            }
        }