000102. Метки и прыжки
Метки и прыжки|Всем хай! Этот короткий урок будет о метках и о том, как совершать прыжки на них.|wmysterio|wmysterio||||Как и в СанниБилдер, в C# так же есть подобная возможность. Начнём с меток. Синтаксис написания похож на 99% с SB, разница только в том, что символ : нужно ставить после названия метки:
Пример:
С метками скрипт уже во многом напоминает наш любимый SannyBuilder. Здесь также присутствуют правила написания меток ( и переменных в том числе ):
Нужно использовать латинские символы в качестве имён;
Первый символ не должен начинаться с цифры;
Нельзя разделать название пробелами и использовать спец-символы;
Название должно быть уникальным (не должно совпадать);
Прыжки! Наш любимый jump теперь есть в c#. Как и SannyBuilder, в c# есть инструкция goto, что равносильна команде jump в SB. Синтаксис в C# следующий:
Минусы в том, что метки не сохраняются в каком-то буфере обмена, поэтому нужно запоминать все метки. К тому-же метку нельзя писать, если на неё не переходит хоть один оператор goto, что не совсем удобно.
× **Примечание:** такие зависимости действуют не во всех версиях C#.
Рассмотрим простой пример:
C# | Аналог в Sanny Builder |
---|---|
``` cs using System; using GTA; namespace TestScript { public class Thread : Script { public Thread() { Label1: goto Label2; Label2: goto Label1; } } } {$CLEO} 0000: thread 'Thread' :Label1 jump @Label2 :Label2 jump @Label1 0A93: end_custom_thread cs Wait(0); cs using System; using GTA; namespace TestScript { public class Thread : Script { public Thread() { Label1: Wait(0); goto Label2; Label2: goto Label1; } } } {$CLEO} 0000: thread 'Thread' :Label1 wait 0 jump @Label2 :Label2 jump @Label1 0A93: end_custom_thread |
Last updated