Current time: 21.01.2022, 21:33 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Новый ERM редактор
» Sublime Text
Author Message
Berserker Offline
Administrators

Posts: 15661
Post: #39

Не мерял производительность. Как минимум несколько вызовов функций на каждый [ с остановкой поиска спецсимвола и последующим возобновлением.
А так всё верно. Я давно не тестировал большое число скриптов и модов в плане загрузки. Но так как в ЕРМ реально нет конструкции комментариев, хоть мы и выделяем их визуально, то метки проверяется. Если сочтёте, что не критично и визуально лучше, то почему бы и нет. Я сторонник кода, в котором не нужно комментировать каждую строчку, а лишь блоки строк. Надеюсь, с Эры 3.0.0 такой код можно будет писать.

Code:
while Scanner.FindCharset(SPECIAL_CHARS) do begin
  Scanner.GetCurrChar(c);

  case c of
    '!': begin
      Scanner.GotoNextChar;

      if Scanner.GetCurrChar(c) then begin
        case c of
          '!': begin
            if Scanner.GetCharAtRelPos(+1, c) and (c = '!') then begin
              FlushMarked;
              Scanner.SkipChars('!');
              MarkPos;
            end else begin
              ParseCmd;
            end;
          end; // .case '!'

          '?': begin
            if IsErm2 then begin
              FinalizeLocalVarsPools;
              InitLocalVarsPools;
            end;

            ResolveLabels;
            Labels.Clear;
            CmdN := -1;
            ParseCmd;
          end; // .case '?'

          '#': begin
            ParseCmd;
          end; // .case '!'
        end; // .switch c
      end; // .if
    end; // .case '!'

    '$', '@': begin
      if IsErm2 then begin
        HandleLocalVar(c);
      end else begin
        Scanner.GotoNextChar;
      end;
    end;

    '[': begin
      if Scanner.GetCharAtRelPos(+1, c) and (c = ':') then begin
        ParseLabel(GLOBAL_SCOPE);
      end else begin
        Scanner.GotoNextChar;
      end;
    end; // .case '['
  end; // .switch c
end; // .while


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
06.03.2020 20:01
Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Messages In This Thread
Новый ERM редактор - Berserker - 16.01.2020, 02:17
RE: Новый ERM редактор - daemon_n - 16.01.2020, 03:05
RE: Новый ERM редактор - Berserker - 16.01.2020, 03:27
RE: Новый ERM редактор - Bes - 16.01.2020, 04:10
RE: Новый ERM редактор - XEPOMAHT - 16.01.2020, 12:32
RE: Новый ERM редактор - daemon_n - 16.01.2020, 05:37
RE: Новый ERM редактор - Berserker - 16.01.2020, 05:43
RE: Новый ERM редактор - daemon_n - 16.01.2020, 06:52
RE: Новый ERM редактор - FallenAngel - 16.01.2020, 09:11
RE: Новый ERM редактор - igrik - 16.01.2020, 10:23
RE: Новый ERM редактор - FallenAngel - 16.01.2020, 12:34
RE: Новый ERM редактор - XEPOMAHT - 16.01.2020, 13:09
RE: Новый ERM редактор - daemon_n - 16.01.2020, 13:31
RE: Новый ERM редактор - XEPOMAHT - 16.01.2020, 13:42
RE: Новый ERM редактор - daemon_n - 16.01.2020, 13:48
RE: Новый ERM редактор - XEPOMAHT - 16.01.2020, 14:09
RE: Новый ERM редактор - feanor - 16.01.2020, 14:10
RE: Новый ERM редактор - Berserker - 16.01.2020, 15:40
RE: Новый ERM редактор - XEPOMAHT - 16.01.2020, 16:42
RE: Новый ERM редактор - FallenAngel - 16.01.2020, 15:45
RE: Новый ERM редактор - Berserker - 16.01.2020, 15:52
RE: Новый ERM редактор - Berserker - 16.01.2020, 16:54
RE: Новый ERM редактор - XEPOMAHT - 16.01.2020, 17:15
RE: Новый ERM редактор - Berserker - 16.01.2020, 17:33
RE: Новый ERM редактор - Bes - 17.02.2020, 14:44
RE: Новый ERM редактор - Algor - 17.02.2020, 15:07
RE: Новый ERM редактор - Berserker - 17.02.2020, 15:50
RE: Новый ERM редактор - Zur13 - 04.03.2020, 23:34
RE: Новый ERM редактор - daemon_n - 05.03.2020, 00:23
RE: Новый ERM редактор - daemon_n - 05.03.2020, 00:32
RE: Новый ERM редактор - Berserker - 05.03.2020, 02:18
RE: Новый ERM редактор - Zur13 - 05.03.2020, 02:26
RE: Новый ERM редактор - daemon_n - 05.03.2020, 02:52
RE: Новый ERM редактор - Zur13 - 05.03.2020, 03:00
RE: Новый ERM редактор - Berserker - 05.03.2020, 03:21
RE: Новый ERM редактор - Algor - 06.03.2020, 11:52
RE: Новый ERM редактор - Berserker - 06.03.2020, 16:23
RE: Новый ERM редактор - Zur13 - 06.03.2020, 19:45
RE: Новый ERM редактор - Berserker - 06.03.2020 20:01
RE: Новый ERM редактор - Zur13 - 06.03.2020, 23:00
RE: Новый ERM редактор - Berserker - 06.03.2020, 23:11
RE: Новый ERM редактор - Bes - 07.03.2020, 05:12
RE: Новый ERM редактор - daemon_n - 10.03.2020, 23:35
RE: Новый ERM редактор - Zur13 - 10.03.2020, 23:45
RE: Новый ERM редактор - Berserker - 11.03.2020, 00:14
RE: Новый ERM редактор - Zur13 - 11.03.2020, 00:25
RE: Новый ERM редактор - Algor - 11.03.2020, 01:40
RE: Новый ERM редактор - Berserker - 11.03.2020, 01:55
RE: Новый ERM редактор - Zur13 - 11.03.2020, 02:47
RE: Новый ERM редактор - Berserker - 11.03.2020, 02:55
RE: Новый ERM редактор - Zur13 - 11.03.2020, 03:25
RE: Новый ERM редактор - Bes - 11.03.2020, 03:35
RE: Новый ERM редактор - Berserker - 11.03.2020, 03:45
RE: Новый ERM редактор - Zur13 - 11.03.2020, 03:50
RE: Новый ERM редактор - Berserker - 11.03.2020, 04:17
RE: Новый ERM редактор - Berserker - 11.03.2020, 05:16
RE: Новый ERM редактор - Zur13 - 11.03.2020, 13:13
RE: Новый ERM редактор - Zur13 - 12.03.2020, 02:42
RE: Новый ERM редактор - Berserker - 12.03.2020, 03:17
RE: Новый ERM редактор - Zur13 - 12.03.2020, 03:30
RE: Новый ERM редактор - Berserker - 12.03.2020, 03:59
RE: Новый ERM редактор - Zur13 - 13.03.2020, 12:26
RE: Новый ERM редактор - daemon_n - 01.05.2020, 14:36
RE: Новый ERM редактор - Bes - 01.05.2020, 17:05
RE: Новый ERM редактор - Algor - 01.05.2020, 19:30
RE: Новый ERM редактор - daemon_n - 01.05.2020, 20:39
RE: Новый ERM редактор - SergOz - 11.11.2020, 19:32
RE: Новый ERM редактор - Berserker - 12.11.2020, 06:47
RE: Новый ERM редактор - SergOz - 12.11.2020, 14:24
RE: Новый ERM редактор - Bes - 12.11.2020, 21:30
RE: Новый ERM редактор - SergOz - 24.11.2020, 22:50
RE: Новый ERM редактор - Berserker - 25.11.2020, 01:05
RE: Новый ERM редактор - V_Maiko - 25.11.2020, 01:48
RE: Новый ERM редактор - Berserker - 25.11.2020, 03:02
RE: Новый ERM редактор - SergOz - 20.02.2021, 14:39
RE: Новый ERM редактор - Berserker - 20.02.2021, 15:45
RE: Новый ERM редактор - daemon_n - 21.02.2021, 15:17
RE: Новый ERM редактор - SergOz - 21.02.2021, 16:46
RE: Новый ERM редактор - Bes - 24.02.2021, 03:12
RE: Новый ERM редактор - SergOz - 24.02.2021, 03:16
RE: Новый ERM редактор - SergOz - 24.12.2021, 16:26
RE: Новый ERM редактор - Berserker - 24.12.2021, 17:34
RE: Новый ERM редактор - SergOz - 24.12.2021, 17:55
RE: Вопросы по моддингу - SergOz - 04.11.2020, 23:27
RE: Вопросы по моддингу - Berserker - 04.11.2020, 23:53
RE: Разные вопросы - SergOz - 11.11.2020, 04:31

Forum Jump:

Powered by MyBB Copyright © 2002-2022 MyBB Group