Локальные декорации
|
|
xomach | Дата: Вторник, 23 Октября 2012, 18:54:09 | Сообщение # 1 |
7 уровень
Группа: Проверенные
Сообщений: 484
Награды: 0
Репутация: 128
Блокировки:
| Возможно ли создавать видимые лишь одному игроку декорации??
|
|
|
|
Borodach | Дата: Вторник, 23 Октября 2012, 19:07:45 | Сообщение # 2 |
9 уровень
Группа: Проверенные
Сообщений: 930
Награды: 0
Репутация: 422
Блокировки:
| if GetLocalPlayer()==Player(PlayerId) then
call ShowDestructable(destructable,true)
endif
Karamba
|
|
|
|
xomach | Дата: Вторник, 23 Октября 2012, 19:11:47 | Сообщение # 3 |
7 уровень
Группа: Проверенные
Сообщений: 484
Награды: 0
Репутация: 128
Блокировки:
| Borodach, спс, и уточнение, перед этим надо конечно же строчку call ShowDestructable(destructable,false) ?
|
|
|
|
Ty3uK | Дата: Вторник, 23 Октября 2012, 19:12:47 | Сообщение # 4 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Code call ShowDestructable(destructable, GetLocalPlayer() == player) Добавлено (23 Октября 2012, 19:12:47) --------------------------------------------- И перед этим никакой строчки не надо. player - наш игрок
|
|
|
|
xomach | Дата: Вторник, 23 Октября 2012, 20:16:49 | Сообщение # 5 |
7 уровень
Группа: Проверенные
Сообщений: 484
Награды: 0
Репутация: 128
Блокировки:
| Code //if GetLocalPlayer()==Player(0) then local integer i DisplayTextToForce(GetPlayersAll(), "bbbb") loop exitwhen i==13 DisplayTextToForce(GetPlayersAll(), "aaaa") ShowDestructable(StatIcon[i],FALSE) i=i+1 endloop ShowDestructable(StatIcon[GetTrackableNum(tr)],true) //endif Почему может не идти луп?
|
|
|
|
Brut@lus | Дата: Вторник, 23 Октября 2012, 20:34:14 | Сообщение # 6 |
Группа: Заблокированные
Сообщений: 2496
Награды: 1
Репутация: 924
Блокировки:
| Как можно переменную объявлять после ифа лол
|
|
|
|
Ty3uK | Дата: Вторник, 23 Октября 2012, 20:38:04 | Сообщение # 7 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Brut@lus, ЧУВАК, ДА ТАМ КОММЕНТАРИЙ Добавлено (23 Октября 2012, 20:36:21) --------------------------------------------- xomach, дай i значение. Если не дал - поток ломается. Добавлено (23 Октября 2012, 20:38:04) ---------------------------------------------
Code DisplayTextToForce(GetPlayersAll(), "bbbb") ф топку. Если это дебаг, пиши если хочешь всем вывести текст, пиши Code DisplayTextToPlayer(GetLocalPlayer(), 0., 0., "TEXT") Quote (Brut@lus) Как можно переменную объявлять после ифа Открою секрет - cJASS
|
|
|
|
xomach | Дата: Вторник, 23 Октября 2012, 20:38:17 | Сообщение # 8 |
7 уровень
Группа: Проверенные
Сообщений: 484
Награды: 0
Репутация: 128
Блокировки:
| Brut@lus, а что, это плохо? Да и какая разница иф в коменте как-бы-) . П.С. Проблема решена, причем как-то странно. Я поменял на и все заработало. Хз, почему, уверен, i до этого в функции не использовалась.
|
|
|
|
Ty3uK | Дата: Вторник, 23 Октября 2012, 20:39:00 | Сообщение # 9 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Quote (Ty3uK) xomach, дай i значение. Если не дал - поток ломается.
|
|
|
|
xomach | Дата: Вторник, 23 Октября 2012, 20:45:15 | Сообщение # 10 |
7 уровень
Группа: Проверенные
Сообщений: 484
Награды: 0
Репутация: 128
Блокировки:
| Quote (Ty3uK) ф топку. Если это дебаг, пиши Code BJDebugMsg("TEXT") Не знал такого-) . Quote (Ty3uK) Если не дал - поток ломается. Хм.. Как же я до сих пор этого не знал и не замечал-) .
|
|
|
|
SirNikolas | Дата: Среда, 24 Октября 2012, 13:16:20 | Сообщение # 11 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Quote (xomach) Brut@lus, а что, это плохо? Да и какая разница - иф в коменте как-бы-) . Традиционный JASS2 требует, чтобы объявления локалок были в самом верху функции.
|
|
|
|
xomach | Дата: Среда, 24 Октября 2012, 13:23:55 | Сообщение # 12 |
7 уровень
Группа: Проверенные
Сообщений: 484
Награды: 0
Репутация: 128
Блокировки:
| SirNikolas, а в JNGP разница есть, где обьявлять? И обьявляться она будет только при выполнении иф'а или в любом случае?
|
|
|
|
SirNikolas | Дата: Среда, 24 Октября 2012, 13:28:42 | Сообщение # 13 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Если включен AdicHelper (парсер cJASS), то можно.Quote (xomach) И объявляться она будет только при выполнении иф'а или в любом случае? Если под объявлением ты имеешь в виду выделение памяти под локалку, то в любом. Если присвоение начального значения, то в зависимости от контекста. Если начальное значение задано явно, и это первая переменная, объявленная во вложенном блоке, то сразу, иначе в if'е. Это легко понять, если пообъявлять переменные и посмотреть результирующий код.
|
|
|
|
xomach | Дата: Среда, 24 Октября 2012, 13:35:49 | Сообщение # 14 |
7 уровень
Группа: Проверенные
Сообщений: 484
Награды: 0
Репутация: 128
Блокировки:
| SirNikolas, ответь пожалуй ста здесь: http://warcraft3ft.info/forum/22-42289-1
|
|
|
|
Ty3uK | Дата: Среда, 24 Октября 2012, 14:13:24 | Сообщение # 15 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Quote (SirNikolas) результирующий код. Вот уж где точно фиг что поймешь - адик же переименовывает переменные
|
|
|
|
SirNikolas | Дата: Среда, 24 Октября 2012, 16:05:01 | Сообщение # 16 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Если взять простую функциюCode function test takes nothing returns nothing endfunciton и постепенно добавлять объявления и блоки, можно разобраться.
|
|
|
|