[Вопрос] Проблема с DGUI-системой
|
|
ENAleksey | Дата: Суббота, 18 Февраля 2012, 18:25:55 | Сообщение # 1 |
5 уровень
Группа: Проверенные
Сообщений: 135
Награды: 0
Репутация: 90
Блокировки:
| Захотел импортировать систему себе в карту, а она не работает! У меня JNGP, делал всё как указанно в карте: скопировал юнита dgui установил ему равкод dgui. И ещё, у меня программка для создания интерфейса. Я создаю свой интерфейс, копирую код в карту, а JassHelper выдаёт ошибку, Что делать?
|
|
|
|
SirNikolas | Дата: Суббота, 18 Февраля 2012, 18:33:24 | Сообщение # 2 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Проверь, чтобы в пути к карте не было русских букв. Перед запуском карты ее надо сохранять. Какую ошибку выдает в обоих случаях?
|
|
|
|
Borodach | Дата: Воскресенье, 19 Февраля 2012, 01:22:42 | Сообщение # 3 |
9 уровень
Группа: Проверенные
Сообщений: 930
Награды: 0
Репутация: 422
Блокировки:
| ENAleksey, Там в тригере Intarface(вроде) все удаляешь и вставляешь то что в проге...
Karamba
|
|
|
|
ENAleksey | Дата: Воскресенье, 19 Февраля 2012, 14:29:37 | Сообщение # 4 |
5 уровень
Группа: Проверенные
Сообщений: 135
Награды: 0
Репутация: 90
Блокировки:
| Я так и делаю, а у меня выходят ошибки: http://www.imagepost.ru/images/l/yy/lyyoxmjwectumqjnhrigmnmslnjkhx.jpg
|
|
|
|
SirNikolas | Дата: Воскресенье, 19 Февраля 2012, 14:39:51 | Сообщение # 5 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Нестандартный код копировал? Добавлено (19 Февраль 2012, 14:39:51) --------------------------------------------- Из свитка в дереве триггеров.
|
|
|
|
ENAleksey | Дата: Воскресенье, 19 Февраля 2012, 14:41:03 | Сообщение # 6 |
5 уровень
Группа: Проверенные
Сообщений: 135
Награды: 0
Репутация: 90
Блокировки:
| Да, я даже пробовал в самой карте.
|
|
|
|
SirNikolas | Дата: Воскресенье, 19 Февраля 2012, 14:44:06 | Сообщение # 7 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| В триггере StartGame есть блок globals. Вытащи его в нестандартный код.
|
|
|
|
ENAleksey | Дата: Воскресенье, 19 Февраля 2012, 14:49:34 | Сообщение # 8 |
5 уровень
Группа: Проверенные
Сообщений: 135
Награды: 0
Репутация: 90
Блокировки:
| Осталась необъявленная переменная UnitVar.
|
|
|
|
SirNikolas | Дата: Воскресенье, 19 Февраля 2012, 14:53:10 | Сообщение # 9 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Найди, где она объявляется и туда же ее.
|
|
|
|
ENAleksey | Дата: Воскресенье, 19 Февраля 2012, 14:57:11 | Сообщение # 10 |
5 уровень
Группа: Проверенные
Сообщений: 135
Награды: 0
Репутация: 90
Блокировки:
| Не нашёл, её там нет
|
|
|
|
SirNikolas | Дата: Воскресенье, 19 Февраля 2012, 15:06:08 | Сообщение # 11 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Ctrl+F заюзай по всем триггерам. А до импорта все работало?Добавлено (19 Февраль 2012, 15:06:08) ---------------------------------------------
Quote (ENAleksey) Я так и делаю То есть ошибки появляются после использования DGUI Creator'а? Можно его код?
|
|
|
|
Ty3uK | Дата: Воскресенье, 19 Февраля 2012, 15:20:00 | Сообщение # 12 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| У меня вообще нативная карта с дгуи не запускается. Нормально сохраняется, а при запуске- главное меню -_-
|
|
|
|
ENAleksey | Дата: Воскресенье, 19 Февраля 2012, 15:24:28 | Сообщение # 13 |
5 уровень
Группа: Проверенные
Сообщений: 135
Награды: 0
Репутация: 90
Блокировки:
| До импорта всё работало.Я посмотрел, оказывается в самой карте с DGUI-системой нет UnitVar, а когда я копирую код из DGUI Creator'а она появляется.
globals BUTTON array ButtonVar PICTURE array PictureVar TEXT array TextVar endglobals
function InterfaceClickL_Timer takes nothing returns nothing if BUTTON.ClickPeriodicSelect(GetOwningPlayer(UnitVar), true) then if (GetLocalPlayer() == GamePlayer) then call ClearSelection() call SelectUnit(GameUnit, true) endif endif endfunction function InterfaceClickR takes nothing returns nothing if BUTTON.Click(GetOrderTargetUnit(), false) then call PauseUnit(GetTriggerUnit(), true) call IssueImmediateOrder(GetTriggerUnit(), "stop") call PauseUnit(GetTriggerUnit(), false) endif endfunction function CreateInterface takes CAMERA cam returns nothing local trigger trig = CreateTrigger() call TriggerRegisterPlayerUnitEvent(trig, GamePlayer, EVENT_PLAYER_UNIT_ISSUED_UNIT_ORDER, null) call TriggerAddAction(trig, function InterfaceClickR) call TimerStart(CreateTimer(), 0.01, true, function InterfaceClickL_Timer) //====================== //========Button======== //====================== set ButtonVar[1] = BUTTON.New(-0.919,-0.737,0.101,0.181,1,'B000') call ButtonVar[1].Show(true,cam) set ButtonVar[2] = BUTTON.New(0.727,0.567,0.101,0.181,1,'B000') call ButtonVar[2].Show(true,cam) //====================== //========Picture======= //====================== set PictureVar[1] = PICTURE.New(0.635,0.748,0.284,0.510,2,'B005') call PictureVar[1].Show(false,cam) call PictureVar[1].Show(true,-1) //====================== //==========TEXT======== //====================== set trig = null endfunction
|
|
|
|
SirNikolas | Дата: Воскресенье, 19 Февраля 2012, 15:32:22 | Сообщение # 14 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Code function InterfaceClickL_Timer takes nothing returns nothing if BUTTON.ClickPeriodicSelect(GamePlayer, true) then if (GetLocalPlayer() == GamePlayer) then call ClearSelection() call SelectUnit(GameUnit, true) endif endif endfunction У меня в карте по умолчанию стоит так.
|
|
|
|
ENAleksey | Дата: Воскресенье, 19 Февраля 2012, 15:48:44 | Сообщение # 15 |
5 уровень
Группа: Проверенные
Сообщений: 135
Награды: 0
Репутация: 90
Блокировки:
| Я уже догадался, но у меня интерфейс не отображается Добавлено (19 Февраль 2012, 15:48:44) --------------------------------------------- О, всё я понял, что делал не так. Надо было скопировать триггеры StartGame и Main, и из StartGame удалить call UpdateFigure(GameCamera).Всем большое спасибо, что помогли! Тему можно закрыть.
|
|
|
|