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


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 18 из 18
  • «
  • 1
  • 2
  • 16
  • 17
  • 18
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » [ВАЖНО] Общалка кодеров (Обмен опытом | Обсуждение проблем)
[ВАЖНО] Общалка кодеров
MelodiaДата: Пятница, 28 Марта 2014, 19:50:36 | Сообщение # 426
Группа: Проверенные
Сообщений: 8026
Награды: 5
Репутация: 5041
Блокировки:
Цитата Bibo ()
Например?

тут например. А зачем тебе пример?
http://rghost.ru/53520250


CM wars 1.15
ЭПОХА АНИМИРОВАННЫХ ТРИГГИРАФ ПРЕШЛА
 

BiboДата: Пятница, 28 Марта 2014, 20:24:10 | Сообщение # 427
Группа: Проверенные
Сообщений: 741
Награды: 0
Блокировки:
Цитата Melodia ()
А зачем тебе пример?

Хочу понять о чем говоришь.

Добавлено (28 Марта 2014, 20:24:10)
---------------------------------------------
Ибо все что приходило в голову, это функция SetUnitTimeScale, которая на GUI обозначена как Анимация - Change Unit Animation Speed


Сообщение отредактировал Bibo - Пятница, 28 Марта 2014, 20:25:23
 

OverkillsДата: Воскресенье, 13 Апреля 2014, 17:19:36 | Сообщение # 428
Группа: Проверенные
Сообщений: 1785
Награды: 0
Репутация: 880
Блокировки:


Что это значит?


 

BiboДата: Воскресенье, 13 Апреля 2014, 18:30:46 | Сообщение # 429
Группа: Проверенные
Сообщений: 741
Награды: 0
Блокировки:
Убери квадратные скобки в имени функции.

Сообщение отредактировал Bibo - Воскресенье, 13 Апреля 2014, 18:31:17
 

SirNikolasДата: Воскресенье, 13 Апреля 2014, 18:33:36 | Сообщение # 430
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Не туда смотришь.



Вот здесь должно быть 'takes'.


 

OverkillsДата: Воскресенье, 18 Мая 2014, 12:17:01 | Сообщение # 431
Группа: Проверенные
Сообщений: 1785
Награды: 0
Репутация: 880
Блокировки:
Спасибо.

Добавлено (18 Мая 2014, 11:59:30)
---------------------------------------------

Добавлено (18 Мая 2014, 12:17:01)
---------------------------------------------
Оно вообще на всё ругается, что за хрень?





Сообщение отредактировал Overkills - Воскресенье, 18 Мая 2014, 11:59:50
 

SirNikolasДата: Воскресенье, 18 Мая 2014, 16:31:10 | Сообщение # 432
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
1. Справа от знака равенства неизвестная переменная MUI: в контексте есть только udg_MUI.
2. Понимать именно так, как написано. Слева от знака равенства udg_SproutLocation[udg_MUI] - точка. Справа - GetSpellTargetUnit() - юнит. Невозможно преобразовать юнита в точку для присваивания.
Не помешали бы скрины, но попробую включить режим экстрасенса.
3. После udg_Player требуются квадратные скобки, а не круглые.
4. После GetForLoopIndexA требуются пустые круглые скобки.
5. udg_Players
6. FOG_OF_WAR_VISIBLE




Сообщение отредактировал SirNikolas - Воскресенье, 18 Мая 2014, 20:57:13
 

OverkillsДата: Воскресенье, 18 Мая 2014, 17:15:31 | Сообщение # 433
Группа: Проверенные
Сообщений: 1785
Награды: 0
Репутация: 880
Блокировки:
Значит это всё моя невнимательность. Спасибо.

 

BiboДата: Воскресенье, 18 Мая 2014, 17:17:34 | Сообщение # 434
Группа: Проверенные
Сообщений: 741
Награды: 0
Блокировки:
Вообще довольно тривиальные вопросы. Информация об ошибках весьма полноценна, чтобы сделать из нее необходимые выводы.
Тоже самое касается функций, имена которых тоже несут информацию о своем предназначении.
Get Spell Target Unit - достаточно перевести дословно, чтобы получить представление о смысле ее бытия - Получить Заклинание Цель Юнит.
 

OverkillsДата: Воскресенье, 18 Мая 2014, 18:13:36 | Сообщение # 435
Группа: Проверенные
Сообщений: 1785
Награды: 0
Репутация: 880
Блокировки:
Bibo, я знаю. Перепутал местами переменные просто. =)

 

MelodiaДата: Вторник, 15 Июля 2014, 20:20:15 | Сообщение # 436
Группа: Проверенные
Сообщений: 8026
Награды: 5
Репутация: 5041
Блокировки:
Может кто по логу сказать в чем примерно причина фатала?
http://rghost.ru/56908721


CM wars 1.15
ЭПОХА АНИМИРОВАННЫХ ТРИГГИРАФ ПРЕШЛА
 

SirNikolasДата: Вторник, 15 Июля 2014, 20:42:14 | Сообщение # 437
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
'S009'

 

MelodiaДата: Вторник, 15 Июля 2014, 21:15:40 | Сообщение # 438
Группа: Проверенные
Сообщений: 8026
Награды: 5
Репутация: 5041
Блокировки:
SirNikolas, спасибо, большое. Хотя непонятно, что в этой ауре выносливаости такого фатального, кроме "доступных целей: враги здания".
Аура офк действовала при этом на нужные цели - друзья, сам воин.


CM wars 1.15
ЭПОХА АНИМИРОВАННЫХ ТРИГГИРАФ ПРЕШЛА
 

SirNikolasДата: Вторник, 15 Июля 2014, 21:36:18 | Сообщение # 439
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Может, она триггерно кому-то добавляется? Я так поймал один фатал, когда пытался запретить способность у 16 игрока (когда они с 0 до 15). У тебя проблема может быть и не в игроке.

Добавлено (15 Июля 2014, 21:36:18)
---------------------------------------------
Ну и нужно больше информации для размышления: когда произошел фатал, сколько юнитов было с такой способностью, как они располагались относительно друг друга и других юнитов и т. п.


 

MelodiaДата: Вторник, 22 Июля 2014, 17:58:34 | Сообщение # 440
Группа: Проверенные
Сообщений: 8026
Награды: 5
Репутация: 5041
Блокировки:
SirNikolas, ну как раз игрок вроде применил прыжок (потма), и аура в принципе давалась... В этотм момент техник ставил Stasis Trap на нее. Прыжок вот эту самую ауру даёт.

Добавлено (15 Июля 2014, 23:47:51)
---------------------------------------------
там правда есть и установка уровня способности, что может вызывать фатал, но она делается у живого героя только.

Добавлено (22 Июля 2014, 15:31:21)
---------------------------------------------
Можно ли как то обратиться к тексту номер ХХХ в файле текстов?
Именно мне нужно чтобы триггерно показывалось сообщенние в точности как текст описания способности или т.п.

Добавлено (22 Июля 2014, 17:58:34)
---------------------------------------------
По ходу вот так по идее можно
TRIGSTR_3430
где 3430 - номер текста в wts-файле карты.


CM wars 1.15
ЭПОХА АНИМИРОВАННЫХ ТРИГГИРАФ ПРЕШЛА
 

SirNikolasДата: Вторник, 22 Июля 2014, 20:58:37 | Сообщение # 441
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Цитата Melodia ()
По ходу вот так по идее можно
TRIGSTR_3430
где 3430 - номер текста в wts-файле карты.
Только проблема в том, что это не описания способностей. :)
Туда пишутся длинные строки из Редактора Триггеров. Ну и можно вручную что-нибудь приписать. Только при сейве сбрасываться будет, надо скрипт писать, который будет автоматически заменять .wts

Я думал в свое время насчет альтернативного использования этого файла. Все, что пришло в голову - юзать его вместо строковых массивов какой-нибудь базы данных (да-да, можно делать "TRIGSTR_123" + I2S(i)).


 

MelodiaДата: Четверг, 31 Июля 2014, 15:49:39 | Сообщение # 442
Группа: Проверенные
Сообщений: 8026
Награды: 5
Репутация: 5041
Блокировки:
В 1 триггере у меня вдргу обнаружилась такая беда:

причем раньше все было нормально.
Идей нет вообще, спасайте кто-нибудь!


CM wars 1.15
ЭПОХА АНИМИРОВАННЫХ ТРИГГИРАФ ПРЕШЛА
 

SirNikolasДата: Четверг, 31 Июля 2014, 15:54:25 | Сообщение # 443
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Конвертни и скинь весь триггер текстом. Может, там тупо опечатка где.

Например, я вижу пробел в начале строчки SetUnitY, но конкретно это, понятно, ни на что не влияет.




Сообщение отредактировал SirNikolas - Четверг, 31 Июля 2014, 15:55:28
 

MelodiaДата: Четверг, 31 Июля 2014, 15:57:25 | Сообщение # 444
Группа: Проверенные
Сообщений: 8026
Награды: 5
Репутация: 5041
Блокировки:
function Trig_Gust_Loop_Func001A takes nothing returns nothing
set udg_Unit[61] = GetEnumUnit()
call SetUnitY(udg_Unit[61],GetWidgetY(udg_Unit[61])+35*Sin(GetUnitFacing (udg_Unit[61]) * bj_DEGTORAD))
call SetUnitX(udg_Unit[61],GetWidgetX (udg_Unit[61])+35*Cos(GetUnitFacing (udg_Unit[61]) * bj_DEGTORAD))
endfunction

function Trig_Gust_Loop_Func002C takes nothing returns boolean
if ( not ( IsUnitGroupEmptyBJ(udg_GGAA[46]) == true ) ) then
return false
endif
return true
endfunction

function Trig_Gust_Loop_Actions takes nothing returns nothing
call ForGroupBJ( udg_GGAA[46], function Trig_Gust_Loop_Func001A )
if ( Trig_Gust_Loop_Func002C() ) then
call DisableTrigger( GetTriggeringTrigger() )
else
endif
endfunction

//===========================================================================
function InitTrig_Gust_Loop takes nothing returns nothing
set gg_trg_Gust_Loop = CreateTrigger( )
call DisableTrigger( gg_trg_Gust_Loop )
call TriggerRegisterTimerEventPeriodic( gg_trg_Gust_Loop, 0.03 )
call TriggerAddAction( gg_trg_Gust_Loop, function Trig_Gust_Loop_Actions )
endfunction


CM wars 1.15
ЭПОХА АНИМИРОВАННЫХ ТРИГГИРАФ ПРЕШЛА
 

SirNikolasДата: Четверг, 31 Июля 2014, 16:05:38 | Сообщение # 445
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
В каком смысле "не работает"? Двигает только по одной оси?

Воткни вывод сообщения до и после CS. Кстати, выводи там не просто текст, а значение константы bj_DEGTORAD ( call BJDebugMsg(R2S(bj_DEGTORAD)) ).


 

MelodiaДата: Четверг, 31 Июля 2014, 16:10:40 | Сообщение # 446
Группа: Проверенные
Сообщений: 8026
Награды: 5
Репутация: 5041
Блокировки:
Чертовщина какая-то. А move не двигает юниты через "блокиратор обоих путей" ни прикаких обстоятельствах)).
Заменил блокираторы обоих путей на блокираторы суши, хз что делать.
Ананлогичные триггеры, использующие такой де тип дамиков - пашут нормально с сет юнит икс игрек

Добавлено (31 Июля 2014, 16:07:41)
---------------------------------------------
Цитата SirNikolas ()
В каком смысле "не работает"? Двигает только по одной оси?

не двигает.Дамик появляется и стоит на месте. А move - двигает...
Цитата SirNikolas ()
Воткни вывод сообщения до и после CS. Кстати, выводи там не просто текст, а значение константы bj_DEGTORAD ( call BJDebugMsg(R2S(bj_DEGTORAD)) ).

ща попробую

Добавлено (31 Июля 2014, 16:10:40)
---------------------------------------------
0.017 всегда выводит


CM wars 1.15
ЭПОХА АНИМИРОВАННЫХ ТРИГГИРАФ ПРЕШЛА
 

SirNikolasДата: Четверг, 31 Июля 2014, 16:16:09 | Сообщение # 447
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Включи оба метода движения (CS и полярное смещение), сохрани карту, вытащи из нее war3map.j и скинь мне.

Хотя если у тебя выключены vJass и cJass, этого можно не делать, все равно ничего не изменится.

Хм. То есть ты просто выключаешь одну пару строк, включаешь другую - и все начинает работать?

Добавлено (31 Июля 2014, 16:16:09)
---------------------------------------------
Цитата Melodia ()
А move не двигает юниты через "блокиратор обоих путей" ни прикаких обстоятельствах)).
И не должен, кстати.


 

MelodiaДата: Четверг, 31 Июля 2014, 16:24:24 | Сообщение # 448
Группа: Проверенные
Сообщений: 8026
Награды: 5
Репутация: 5041
Блокировки:
Цитата SirNikolas ()
Хм. То есть ты просто выключаешь одну пару строк, включаешь другую - и все начинает работать?

SirNikolas, ИМЕННО. То есть если бы ни то и ни то не пахало - надо было бы рыться вв триггерах ловящих входящие юниты или работающие с группами или меняющие точки....
Но тут тупо не работает сет юнит икс игрек, а мув - работает. Причем раньше всё норм было.

Добавлено (31 Июля 2014, 16:24:24)
---------------------------------------------

Ваще хз, убирал все действия в цикле (скрины повыше), заменял дамиика - без толку.


CM wars 1.15
ЭПОХА АНИМИРОВАННЫХ ТРИГГИРАФ ПРЕШЛА


Сообщение отредактировал Melodia - Четверг, 31 Июля 2014, 16:24:36
 

SirNikolasДата: Суббота, 02 Августа 2014, 07:57:31 | Сообщение # 449
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Код
#include "cj_types.j"
#include "cj_print.j"

library MovingTest {
     define {
         GetEnumUnit   = GetEnumUnitHook;
         GetWidgetX    = GetWidgetXHook;
         GetWidgetY    = GetWidgetYHook;
         GetUnitFacing = GetUnitFacingHook;
         Sin           = SinHook;
         Cos           = CosHook;
         SetUnitX      = SetUnitXHook;
         SetUnitY      = SetUnitYHook;
     }

     unit GetEnumUnitHook() {
         unit u = GetEnum##Unit();
         printf("* GetEnumUnit() -> %h", u);
         return u;
     }

     real GetWidgetXHook(widget w) {
         real r = GetWidget##X(w);
         printf("* GetWidgetX(%h) -> %r", w, r);
         return r;
     }

     real GetWidgetYHook(widget w) {
         real r = GetWidget##Y(w);
         printf("* GetWidgetY(%h) -> %r", w, r);
         return r;
     }

     real GetUnitFacingHook(unit u) {
         real r = GetUnit##Facing(u);
         printf("* GetUnitFacing(%h) -> %r", u, r);
         return r;
     }

     real SinHook(real x) {
         real y = S##in(x);
         printf("* Sin(%r) -> %r", x, y);
         return y;
     }

     real CosHook(real x) {
         real y = C##os(x);
         printf("* Cos(%r) -> %r", x, y);
         return y;
     }

     void SetUnitXHook(unit u, real x) {
         printf("* SetUnitX(%h, %r)", u, x);
         SetUnit##X(u, x);
     }

     void SetUnitYHook(unit u, real y) {
         printf("* SetUnitY(%h, %r)", u, y);
         SetUnit##Y(u, y);
     }
}
Дебажные сообщения замени на "start" и "end", создай новый триггер, скопируй это в него (не в кастом код). Запусти версию с CS.


 

HormonijДата: Среда, 15 Июля 2015, 22:34:47 | Сообщение # 450
7 уровень
Группа: Ветераны
Сообщений: 293
Награды: 2
Репутация: 135
Блокировки:
 

Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » [ВАЖНО] Общалка кодеров (Обмен опытом | Обсуждение проблем)
  • Страница 18 из 18
  • «
  • 1
  • 2
  • 16
  • 17
  • 18
Поиск:

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