Сейчас 18:44:08 Пятница, 24 сентября, 2021 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » [JASS] Урок 5. Циклы
[JASS] Урок 5. Циклы
ВолчачкаДата: Воскресенье, 16 Августа 2015, 23:40:03 | Сообщение # 1
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
Приветствую вас дорогие мои друзья, сегодня я вместо Дуосоры Солстикова , поясню о циклах. Начнём с того, что он именуется начальным ключевым словом - loop и закрывается ключевым словом endloop, а условный оператор выхода называется - exitwhen, который прерывает цикл, если условие становиться истинным.
loop - начало цикла
exitwhen - условный выхода из цикла. Условный выход будет выполнен, если условие для выхода из цикла станет истинным.
endloop - конец цикла

Пример простенького цикла:

Код
function Test takes nothing returns nothing
      local integer i = 0
      loop
          set i = i + 1   
      exitwhen i == 12
      endloop
endfunction


Цикл может повторяться неограниченное кол-во раз, но однако в зависимости от мощности процессора может обрабатывать в течении микро времени n-ое кол-во повтором, или зациклится совсем или сломает поток, в котором он работает. Это было проверенно в ходе тестов, когда просто тестировал может ли он делать больше повторов.
Когда поставил условие выхода примерно больше 10000 раз, то он неожиданного не завершался, проверял через таймер, было всего 9820 повторов, на другой машине по мощнее он делал больше.

exitwhen {Условие 1,Условие N ...} может принимать несколько условий.
i >= 12 or b or not b2

Примеры:
exitwhen i == 12; exitwhen p == null or b; exitwhen not b; и т.д.
Рекомендую использовать для выхода из цикла or для двух условий и использовал логическую переменную.
Не рекомендую использовать and, т.к. считаю не особо полезным для цикла.

Для циклов с шагом, который использует локальную переменную или одну и туже глобальную переменную, которая используется разными циклами нужно обнулять.

Чаще всего циклы используются для инициализации по умолчанию переменных, в основном глобальных переменных массивов, а так же для для того зарегистрировать несколько игроков на 1 триггер. Самое наибольшее применение для охвата боевых единиц вокруг определённого воина.

А теперь мы рассмотрим один из вариантов использования цикла в данном примере.

Допустим, у нас есть карта, где герой по имени Николай исцеляет здоровье всем союзникам и себе в размере 100 ед., каждые 120 секунд. И нам нужно написать код, который делал бы всё сие данное действие. Для этого мы напишем функцию HealNicholas, в который будет цикл, сортирующий воинов, которые будут исцелены согласно условию.

Код
function HealNicholas takes nothing returns nothing
      local unit p = null
      call GroupEnumUnitsInRange( udg_Group, GetUnitX(udg_Unit), GetUnitY(udg_Unit), 500., null )
      loop
          set p = FirstOfGroup( udg_Group )
      exitwhen p == null
          if not IsUnitType( p, UNIT_TYPE_DEAD ) and IsUnitAlly( p, udg_Player ) and  not IsUnitType( p, UNIT_TYPE_ANCIENT ) and not IsUnitType( p, UNIT_TYPE_STRUCTURE ) then
              call SetUnitState( p, UNIT_STATE_LIFE, GetUnitState( p, UNIT_STATE_LIFE ) + 100. )
          endif
          call GroupRemoveUnit( udg_Group, p )
      endloop
      set p = null
endfunction


native GroupEnumUnitsInRange takes group whichGroup1, real x2, real y3, real radius4, boolexpr filter5 returns nothing
Охватывает вокруг точки координат x,y боевых единиц.
1 - группа, в которую добавляются боевые единицы сие данной функцией.
2,3 - координаты, где функция перебирает боевых единиц.
4 - радиус, по площади которого функция перебирает боевых единиц
boolexpr filter - фильтр которому, данная боевая единица будет добавлена в группу, иначе сие добавления не будет. Используемый тип для данного filterfunc, для этого создаётся функция фильтра, с возвращением логического значения. Внутри фильтр функции можно написать условия, для включения перечисляемой боевой единицы в группу(Отряд).
native FirstOfGroup takes group whichGroup returns unit - Возвращает первую боевую единицу в группе(Отряде).

constant native IsUnitType takes unit whichUnit, unittype whichUnitType returns boolean - возвращает логическое значение , является ли боевая единица относится к данному типу или классификации.
UNIT_TYPE_DEAD - Если боевая единица труп (т.е. мертвая), то вернёт истину.
UNIT_TYPE_ANCIENT - Если боевая едина древо, то вернёт истину.
UNIT_TYPE_STRUCTURE - Если боевая едина постройка, то вернёт истину.
constant native IsUnitAlly takes unit whichUnit, player whichPlayer returns boolean - возвращает логическое значение, выявляет является ли данная боевая единица союзником для данного игрока.

native SetUnitState takes unit whichUnit, unitstate whichUnitState, real newVal returns nothing - устанавливает текущее значение маны или здоровья боевой единицы.
constant native GetUnitState takes unit whichUnit, unitstate whichUnitState returns real - возвращает текущее или максимальное значение маны или здоровья боевой единицы.
UNIT_STATE_LIFE - текущее значение жизни(здоровья)
native GroupRemoveUnit takes group whichGroup, unit whichUnit returns nothing - удаляет боевую единицу из группы.

В данном примере, мы просто используем условие, по которому отбирается нам нужная боевая единица для исцеления. Цикл завершиться, когда группа станет пустой, т.е. при получении б.е. в переменную p будет равна null (Это будет говорит о том, что группа пуста).

Версия 0.2


Сообщение отредактировал Волчачка - Понедельник, 17 Августа 2015, 20:39:08
 

DuosoraДата: Воскресенье, 16 Августа 2015, 23:44:02 | Сообщение # 2
The cats never sleep...
Группа: Ветераны
Сообщений: 6734
Награды: 10
Репутация: 2161
Блокировки:
t0_b or not to_b...

Подробно, но своеобразно.
А почему бы не показать do/while, repeat/until и другие виды циклов на базе джассерского лупа?


Не зли других и сам не злись.
Мы - гости в этом мире.
И если что не так - смирись,
Будь поумнее - улыбнись,
Ведь в мире всё закономерно.
Зло, излучённое тобой,
К тебе вернётся непременно.
 

-=FoX=-Дата: Понедельник, 17 Августа 2015, 05:44:25 | Сообщение # 3
1 уровень
Группа: Пользователи
Сообщений: 10
Награды: 0
Репутация: 0
Блокировки:
Фиолетовым выделена ложь, а желтым - волчанка - умышленное искажение до потери смысла или читабельности.


Приветствую вас дорогие мои друзья, сегодня я вместо Дуосоры Солстикова , поясню о циклах. Начнём с того что он называетсяв JASS - loop и заканчивается endloop, а условный оператор выхода называетсяexitwhen, которыйможет содержать любое условие.
loop - начало цикла
exitwhen - условный выхода из цикла, но знайте это не цикл пока, а когда. Этот условный выход будет ожидать, когда выпадет соответствующее условие, ну или проще говоря станет истинным.
endloop - конец цикла

Пример простого цикла:

Код
function Test takes nothing returns nothing
      local integer i = 0
      loop
          set i = i + 1   
      exitwhen i == 12
      endloop
endfunction


У цикла есть свой лимит повторов в потоке и он может сломать один поток. Поэтому лучше использовать для предотвращения поломки лимит повторов через условие выхода exitwhen. Хотя это в цикле и не нужно, это больше в таймерах надо, но это уже другая тема.

условия можно ставить так:

exitwhen i >= 12 or b or not b2

exitwhen i >= 12 and not b // and лучше не использовать в циклах, можно or

А можно просто ограничиться одним.

И не забывайте обнулять переменную, если она локальная перед использование цикла.

Чаще всего циклы используются для инициализации по умолчанию переменных, в основном глобальных переменных массивов, а так же для для того зарегистрировать несколько игроков на 1 триггер. Самое наибольшее применение для охвата боевых единиц вокруг определённого воина.

А теперь мы рассмотрим простенький вариант обработки воинов вокруг боевой единицы.
Допустим, у нас есть карта, где герой по имени Николай, например, исцеляет 100 ед. здоровья всем союзникам и себе, каждые 120 секунд. И нам нужно написать функцию, которая бы это выполняла.

function HealNicholas takes nothing returns nothing
   local unit p = null
   call GroupEnumUnitsInRange( udg_Group, GetUnitX(udg_Unit), GetUnitY(udg_Unit), 500., null )
   loop
     set p = FirstOfGroup( udg_Group )
     exitwhen p == null
     if not IsUnitType( p, UNIT_TYPE_DEAD ) and IsUnitAlly( p, udg_Player ) and not IsUnitType( p, UNIT_TYPE_ANCIENT ) and not IsUnitType( p, UNIT_TYPE_STRUCTURE ) then
       call SetUnitState( p, UNIT_STATE_LIFE, GetUnitState( p, UNIT_STATE_LIFE ) + 100. )
     endif
     call GroupRemoveUnit( udg_Group, p )
   endloop
   set p = null
endfunction

native GroupEnumUnitsInRange takes group whichGroup, real x, real y, real radius, boolexpr filter returns nothing
Охватывает вокруг точки координат x,y боевых единиц.
whichGroup - группа, в которую добавляют боевых единиц
radius - радиус охвата
boolexpr filter - условие отбора юнитов, нужно создавать типа фиольтра, не нужный параметр, ну или редко используемый.
native FirstOfGroup takes group whichGroup returns unit возвращает первую боевую единицу в группе.
constant native IsUnitType takes unit whichUnit, unittype whichUnitType returns boolean - возвращает логическое значение ,является ли боевая единица данным типом или нет.
UNIT_TYPE_DEAD - мертвый
UNIT_TYPE_ANCIENT - древо
UNIT_TYPE_STRUCTURE - постройка
constant native IsUnitAlly takes unit whichUnit, player whichPlayer returns boolean - возвращает логическое значение, выявляет является ли данная боевая единица союзником для данного игрока.
native SetUnitState takes unit whichUnit, unitstate whichUnitState, real newVal returns nothing - устанавливает текущее значение маны или здоровья боевой единицы.
constant native GetUnitState takes unit whichUnit, unitstate whichUnitState returns real - возвращает текущее или максимальное значение маны или здоровья боевой единицы.
UNIT_STATE_LIFE - текущее значение жизни(здоровья)
native GroupRemoveUnit takes group whichGroup, unit whichUnit returns nothing - удаляет боевую единицу из группы.

И так, данная функция выбирает боевых единиц, которые являются союзниками (или принадлежат игроку, тоже считаются как союзные) а так же отрицает здания, древа и трупы. Но можно сделать и на б.е. типа москитов, т.е. чтобы их тоже отрицал. GetUnitAbilityLevel( p, ‘Aloc’ ) == 0, и т.д. ) и исцеляет им 100 ед. здоровья.
 

KaotikaДата: Понедельник, 17 Августа 2015, 09:28:31 | Сообщение # 4
5 уровень
Группа: Проверенные
Сообщений: 144
Награды: 0
Репутация: 20
Блокировки:
Цитата -=FoX=- ()
умышленное искажение до потери смысла или читабельности

думаю я соглашусь с Fox


Тискаю клаву... остальных пока некогда!
 

H_A_PKДата: Понедельник, 17 Августа 2015, 10:20:12 | Сообщение # 5
Быдлокодер
Группа: Проверенные
Сообщений: 2605
Награды: 1
Репутация: 822
Блокировки:
у солстика читабельнее

проклятье ляжет на любого
кто дочитает до конца
нет не дочитывай не надо
остановись ну всё капец
 

ВолчачкаДата: Понедельник, 17 Августа 2015, 15:59:45 | Сообщение # 6
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
Цитата -=FoX=- ()
Фиолетовым выделена ложь, а желтым - волчанка - умышленное искажение до потери смысла или читабельности.

1. Если бы ложь, там приблизительно, но хотя тебе насрать.
2. Я ничего не искажал, это всё дурацкий мелкий шрифт.
3. Я просто не включал дотошность, а ещё если давать им просто так всё понятно на блюдечке, они умнее не станут, а будут зависеть от подсказок.
Цитата Kaotika ()
думаю я соглашусь с Fox

Подлиза.
Цитата H_A_PK ()
у солстика читабельнее

Подлиза.

Алсилична(Alice), какая же ты выскочка, но тебе можно, а другим воспрещено.

[:C.M.] [I.D.F.Q.N.,] [Q.H.W.] [D.] [9.J.8.V.L.D.] [3.E.4.] [H.B.W.2.10.T.C.] [N.L.8..] [:W.U.] [G.T.N.J.D.8.Q.] [G.V.Q.G.7.2.P.] [M.] [F.V.T.T.] [1.G.Q.I.S.R.] [W.] [G.Q.J.2.O.7.,] [H.W.Q.M.D.8.] [T.H.C.3.1.V.S.M.V.1.] [7.] [V.J.] [R.H.5.I.7.] [H.W.H.8.,] [M.6.] [F.] [H.H.T.N.H.B.2.] [S.L.] [B.4.I.A.M.B.W.B.] [D.I.V.V.D.Q.I.L.] [C.H.T.U.B.7.S.Q.3.2.10.S.H..] [:7.I.] [O.D.1.T.J.H.] [9.S.M.M.H.10.M.] [6.A.10.5.7.6.,] [P.8.5.U.D.] [K.V.U.E.] [U.7.5.D.7.O.D.] [T.J.B.R.O.B..]
 

BiboДата: Понедельник, 17 Августа 2015, 16:13:36 | Сообщение # 7
Группа: Проверенные
Сообщений: 741
Награды: 0
Блокировки:
От формулировки и оформления можно получить инсульт.
 

ВолчачкаДата: Понедельник, 17 Августа 2015, 19:55:35 | Сообщение # 8
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
Цитата Bibo ()
От формулировки и оформления можно получить инсульт.

Очередное тупое набивание поста. [:W.Q.F.8.] [I.2.W.M.O.W.P.] [4.H.4.S.D.D.] [M.W.C.T.] [U.I.J.R.U.J.G.H.] [9.D.Q.9.H.R.2.,] [N.V.O.2.A.Q.N.P.F.2.] [S.3.5.Q.V.Q.7.C.V.1.] [9.H.L.U.U.3.] [Q.7.G.G.4..] [:F.M.3.P.H.] [U.] [P.E.R.U.5.] [V.I.F.W.W.2.L.M.,] [R.7.] [C.1.E.S.B.C.V.1.?] [:H.H.P.] [9.B.1.H.M.8.] [2.1.H.H.7.S.D.] [D.3.W.V.6.8.F.2.] [H.4.U.Q.1.] [J.F.2.A.D..]


А теперь коротко о главном. Сие поправим текст в нормальное состояние.
 

ArtFoxДата: Понедельник, 17 Августа 2015, 20:08:57 | Сообщение # 9
1 уровень
Группа: Пользователи
Сообщений: 5
Награды: 0
Репутация: 2
Блокировки:
Цитата Волчачка ()
выскочка

Однажды жизнь заставила перевести пару абзацев с китайского. Теперь я могу читать любую волчанку любого Волчачки. То, что бывает в жизни нарочно не придумать.
 

ВолчачкаДата: Понедельник, 17 Августа 2015, 20:47:17 | Сообщение # 10
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
Лисыч, я поправил текст. Укажи на ошибки, чтобы я их исправил. Просто дуос немного лентяй и берётся за много дел, а я хочу чтобы урок по jass был продолжен. Что-то вроде 50x50.

Добавлено (17 Августа 2015, 20:47:17)
---------------------------------------------

Цитата ArtFox ()
Однажды жизнь заставила перевести пару абзацев с китайского.

Ничего себе у тебя хардкор.
Цитата ArtFox ()
Теперь я могу читать любую волчанку любого Волчачки.

Даже мой шифр?
Цитата ArtFox ()
То, что бывает в жизни нарочно не придумать.

На всё воля божья.
 

DuosoraДата: Вторник, 18 Августа 2015, 22:52:28 | Сообщение # 11
The cats never sleep...
Группа: Ветераны
Сообщений: 6734
Награды: 10
Репутация: 2161
Блокировки:
Цитата ArtFox ()
Однажды жизнь заставила перевести пару абзацев с китайского.

Меня - гораздо больше, потому что образовалось китайское сообщество ткока.
Цитата ArtFox ()
Теперь я могу читать любую волчанку любого Волчачки.

Попробуй вьетнамский. Тогда точно сможешь осилить любую волчанку.
Цитата ArtFox ()
То, что бывает в жизни нарочно не придумать.

Более того, все события имеют свой смысл. Истина.

Добавлено (18 Августа 2015, 22:52:28)
---------------------------------------------
Волчачка,
Помни о том, что JASS сродни Бейсику, но подчиняется по оптимизации тем правилам, которым подчиняется серия языков Си.


Не зли других и сам не злись.
Мы - гости в этом мире.
И если что не так - смирись,
Будь поумнее - улыбнись,
Ведь в мире всё закономерно.
Зло, излучённое тобой,
К тебе вернётся непременно.
 

ВолчачкаДата: Вторник, 18 Августа 2015, 23:36:02 | Сообщение # 12
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
Цитата Duosora ()
что JASS сродни Бейсику

Он помесь некоторых языковых разметок.
Цитата Duosora ()
но подчиняется по оптимизации тем правилам, которым подчиняется серия языков Си.

Может быть и подчиняется, но кривовато.
 

-=FoX=-Дата: Вторник, 18 Августа 2015, 23:40:32 | Сообщение # 13
1 уровень
Группа: Пользователи
Сообщений: 10
Награды: 0
Репутация: 0
Блокировки:
Цитата Волчачка ()
Он помесь некоторых языковых разметок.

Как говорят китайцы - бухала
Цитата Duosora ()
вьетнамский

Глянул. Фигня. Нет омонимизма, а значит нет таких потрясающих ситуаций, когда ни у одного слова в предложении нет полного русского аналога.
 

ВолчачкаДата: Суббота, 22 Августа 2015, 22:39:32 | Сообщение # 14
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
Лисонька, ты так и не сказала, правильна или не правильно моя поправка.
Цитата Волчачка ()
Сообщение отредактировал Волчачка - Понедельник, 17 Август 2015, 20:39:08

Цитата -=FoX=- ()
Как говорят китайцы - бухала

Можно получить точный перевод этого слова, или это просто... что-то вроде твоего типа сарказма, но не сарказм...?
hmm
 

-=FoX=-Дата: Воскресенье, 23 Августа 2015, 13:16:43 | Сообщение # 15
1 уровень
Группа: Пользователи
Сообщений: 10
Награды: 0
Репутация: 0
Блокировки:
不好了 - есть кто-то или что-то в критически плохом состоянии.
Приветствую вас дорогие мои друзья, сегодня я вместо Дуосоры Солстикова , поясню о циклах. Начнём с того, что он именуется начальным ключевым словом - loop и закрывается ключевым словом endloop, а условный оператор выхода называется - exitwhen, который прерывает цикл, если условие становиться истинным.
loop - начало цикла
exitwhen - условный выхода из цикла. Условный выход будет выполнен, если условие для выхода из цикла станет истинным.
endloop - конец цикла

Пример простенького цикла:

Код
function Test takes nothing returns nothing
       local integer i = 0
       loop
           set i = i + 1    
       exitwhen i == 12
       endloop
endfunction


Цикл может повторяться неограниченное кол-во раз, нооднако в зависимости от мощности процессора может обрабатывать в течении микро времени n-ое кол-во повтором, или зациклится совсем или сломает поток, в котором он работает. Это было проверенно в ходе тестов, когда просто тестировал может ли он делать больше повторов.
Когда поставил условие выхода примерно больше 10000 раз, то он неожиданного не завершался, проверял через таймер, было всего 9820 повторов, на другой машине по мощнее он делал больше.

exitwhen {Условие 1,Условие N ...} может принимать несколько условий.
i >= 12 or b or not b2

Примеры:
exitwhen i == 12; exitwhen p == null or b; exitwhen not b; и т.д.
Рекомендую использовать для выхода из цикла or для двух условий и использовал логическую переменную.
Не рекомендую использовать and, т.к. считаю не особо полезным для цикла. Юмор!

Для циклов с шагом, который использует локальную переменную или одну и туже глобальную переменную, которая используется разными циклами нужно обнулять.

Чаще всего циклы используются для инициализации по умолчанию переменных, в основном глобальных переменных массивов, а так же для для того зарегистрировать несколько игроков на 1 триггер. Самое наибольшее применение для охвата боевых единиц вокруг определённого воина.

А теперь мы рассмотрим один из вариантов использования цикла в данном примере.

Допустим, у нас есть карта, где герой по имени Николай исцеляет здоровье всем союзникам и себе в размере 100 ед., каждые 120 секунд. И нам нужно написать код, который делал бы всё сие данное действие. Для этого мы напишем функцию HealNicholas, в который будет цикл, сортирующий воинов, которые будут исцелены согласно условию.

function HealNicholas takes nothing returns nothing
  local unit p = null
  call GroupEnumUnitsInRange( udg_Group, GetUnitX(udg_Unit), GetUnitY(udg_Unit), 500., null )
  loop
    set p = FirstOfGroup( udg_Group )
    exitwhen p == null
    if not IsUnitType( p, UNIT_TYPE_DEAD ) and IsUnitAlly( p, udg_Player ) and not IsUnitType( p, UNIT_TYPE_ANCIENT ) and not IsUnitType( p, UNIT_TYPE_STRUCTURE ) then
       call SetUnitState( p, UNIT_STATE_LIFE, GetUnitState( p, UNIT_STATE_LIFE ) + 100. )
    endif
     call GroupRemoveUnit( udg_Group, p )
   endloop
   set p = null
endfunction

native GroupEnumUnitsInRange takes group whichGroup1, real x2, real y3, real radius4, boolexpr filter5 returns nothing
Охватывает вокруг точки координат x,y боевых единиц.
1 - группа, в которую добавляются боевые единицы сие данной функцией.
2,3 - координаты, где функция перебирает боевых единиц.
4 - радиус, по площади которого функция перебирает боевых единиц
boolexpr filter - фильтр которому, данная боевая единица будет добавлена в группу, иначе сие добавления не будет. Используемый тип для данного filterfunc, для этого создаётся функция фильтра, с возвращениемлогического значения. Внутри фильтр функции можно написать условия, для включения перечисляемой боевой единицы в группу(Отряд).
native FirstOfGroup takes group whichGroup returns unit - Возвращает первую боевую единицу в группе(Отряде).

constant native IsUnitType takes unit whichUnit, unittype whichUnitType returns boolean - возвращает логическое значение , является ли боевая единица относится к данному типу или классификации.
UNIT_TYPE_DEAD - Если боевая единица труп (т.е. мертвая), то вернёт истину.
UNIT_TYPE_ANCIENT - Если боевая едина древо, то вернёт истину.
UNIT_TYPE_STRUCTURE - Если боевая едина постройка, то вернёт истину.
constant native IsUnitAlly takes unit whichUnit, player whichPlayer returns boolean - возвращает логическое значение, выявляет является ли данная боевая единица союзником для данного игрока.

native SetUnitState takes unit whichUnit, unitstate whichUnitState, real newVal returns nothing - устанавливает текущее значение маны или здоровья боевой единицы.
constant native GetUnitState takes unit whichUnit, unitstate whichUnitState returns real - возвращает текущее или максимальное значение маны или здоровья боевой единицы.
UNIT_STATE_LIFE - текущее значение жизни(здоровья)
native GroupRemoveUnit takes group whichGroup, unit whichUnit returns nothing - удаляет боевую единицу из группы.

В данном примере, мы просто используем условие, по которому отбирается нам нужная боевая единица для исцеления. Цикл завершиться, когда группа станет пустой, т.е. при получении б.е. в переменную p будет равна null (Это будет говорит о том, что группа пуста).

Версия 0.2
 

H_A_PKДата: Воскресенье, 23 Августа 2015, 14:10:33 | Сообщение # 16
Быдлокодер
Группа: Проверенные
Сообщений: 2605
Награды: 1
Репутация: 822
Блокировки:
в мне в этом треде только ава волчачки нравится, отльное говно какое-то
Цитата Волчачка ()
Алсилична(Alice), какая же ты выскочка, но тебе можно, а другим воспрещено.

и мне можна


проклятье ляжет на любого
кто дочитает до конца
нет не дочитывай не надо
остановись ну всё капец


Сообщение отредактировал H_A_PK - Воскресенье, 23 Августа 2015, 14:13:54
 

ВолчачкаДата: Воскресенье, 23 Августа 2015, 14:43:57 | Сообщение # 17
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
Цитата -=FoX=- ()
 if not IsUnitType( p, UNIT_TYPE_DEAD ) and IsUnitAlly( p, udg_Player ) and not IsUnitType( p, UNIT_TYPE_ANCIENT ) and not IsUnitType( p, UNIT_TYPE_STRUCTURE ) then
       call SetUnitState( p, UNIT_STATE_LIFE, GetUnitState( p, UNIT_STATE_LIFE ) + 100. )

Чем тебе не нравиться этот обрывок - это же просто пример. Если люди захотят быстроты функции, то они просто найдут по справочку, самые быстрые и вставят их.

И вообще дуосы было лень мне помогать мне, у него свои заботы. Интеллект(один из друзей юзеров) занят своими ддосами, а инферно вообще штудирует asm. Бру не стал бы мне в этом помогать тоже, ему наверняка тоже лень реанимировать школу жасса.

Цитата H_A_PK ()
и мне можна

По крайне мере, он что-то полезное делает, а ты - нет.

Цитата H_A_PK ()
в мне в этом треде только ава волчачки нравится, отльное говно какое-то

А что сам не присоединишься в тему, али предпочитаешь просто так 3.14~3.14~3.14~3.14~3.14~?
 

H_A_PKДата: Четверг, 27 Августа 2015, 14:24:59 | Сообщение # 18
Быдлокодер
Группа: Проверенные
Сообщений: 2605
Награды: 1
Репутация: 822
Блокировки:
Цитата Волчачка ()
А что сам не присоединишься в тему, али предпочитаешь просто так 3.14~3.14~3.14~3.14~3.14~?

ну это
как его
лупами можно делать форгроупы, удобно


проклятье ляжет на любого
кто дочитает до конца
нет не дочитывай не надо
остановись ну всё капец
 

Samedy_Дата: Четверг, 27 Августа 2015, 17:46:40 | Сообщение # 19
7 уровень
Группа: Проверенные
Сообщений: 371
Награды: 0
Репутация: 18
Блокировки:
Цитата H_A_PK ()
мне в этом треде только ава волчачки нравится, отльное говно какое-то

Теперь тебе будет нравится целых две авы.
 

DragoNДата: Среда, 02 Сентября 2015, 19:04:37 | Сообщение # 20
Инквизитор
Группа: Стримеры
Сообщений: 4348
Награды: 7
Репутация: 2776
Блокировки:
Цитата Волчачка ()
[JASS] Урок 5. Циклы

Цитата Волчачка ()
2015

Сириусли?


El Psy Congroo
 

-PICASSO-Дата: Среда, 02 Сентября 2015, 19:24:39 | Сообщение # 21
6 уровень
Группа: Проверенные
Сообщений: 216
Награды: 0
Репутация: 51
Блокировки:
А что сейчас модно?

база паролей: https://yadi.sk/d/mdDhWuvPcTSKw
бекап сайта от 26.12.2010 https://yadi.sk/d/L3xNpibbiHpYE
мой мили ИИ http://www.hiveworkshop.com/forums/attachments/triggers-scripts-269/148112d1440966004-honestai-alternative-amai-scripts.zip
 

Samedy_Дата: Среда, 02 Сентября 2015, 20:23:17 | Сообщение # 22
7 уровень
Группа: Проверенные
Сообщений: 371
Награды: 0
Репутация: 18
Блокировки:
DragoN,
Цитата DragoN ()
2015

>сидеть на бордах
 

ВолчачкаДата: Среда, 02 Сентября 2015, 21:35:17 | Сообщение # 23
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
Цитата DragoN ()
Сириусли?

В этом ничего нет серьёзного, просто немного бодрим сэйт.

Цитата -PICASSO- ()
А что сейчас модно?

Зачем мода, когда можно и в старом найти интересное.
Цитата Samedy_ ()
>сидеть на бордах

Прочитал как "бородах" hmm
 

DragoNДата: Четверг, 03 Сентября 2015, 00:03:50 | Сообщение # 24
Инквизитор
Группа: Стримеры
Сообщений: 4348
Награды: 7
Репутация: 2776
Блокировки:
Цитата Samedy_ ()

>сидеть на бордах

с 2007 не сижу, скатились... борды уже не те
Цитата Волчачка ()
В этом ничего нет серьёзного, просто немного бодрим сэйт.

результат есть?


El Psy Congroo
 

ВолчачкаДата: Четверг, 03 Сентября 2015, 00:21:09 | Сообщение # 25
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
Цитата DragoN ()
результат есть?

А почему бы ему не быть?
 

Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » [JASS] Урок 5. Циклы
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Copyright © 2006 - 2021 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz