Добавлен
Код
define{
    MultiboardSetItemStyleBJ(mb, col, row, showValue, showIcon) = { set mbitem = MultiboardGetItem(mb, row - 1, col - 1); call MultiboardSetItemStyle(mbitem, showValue, showIcon); call MultiboardReleaseItem(mbitem) }
    MultiboardSetItemValueBJ(mb, col, row, val) = { set mbitem = MultiboardGetItem(mb, row - 1, col - 1); call MultiboardSetItemValue(mbitem, val); call MultiboardReleaseItem(mbitem) }
    MultiboardSetItemColorBJ(mb, col, row, red, green, blue, transparency) = { set mbitem = MultiboardGetItem(mb, row - 1, col - 1); call MultiboardSetItemValueColor(mbitem, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)); call MultiboardReleaseItem(mbitem) }
    MultiboardSetItemWidthBJ(mb, col, row, width) = { set mbitem = MultiboardGetItem(mb, row - 1, col - 1); call MultiboardSetItemWidth(mbitem, width/100.0); call MultiboardReleaseItem(mbitem) }
    MultiboardSetItemIconBJ(mb, col, row, iconFileName) = { set mbitem = MultiboardGetItem(mb, row - 1, col - 1); call MultiboardSetItemIcon(mbitem, iconFileName); call MultiboardReleaseItem(mbitem) }
}
JassHelper ругается на это
call set mbitem=MultiboardGetItem(...
Это не помогает
define <call set> = set
Версия AdicHelper 1.4.2.40

Принятый ответ

UrsaBoss, я проверял и всё работает
возможно ты смешиваешь cjass и jass синтаксис (чего делать нельзя) и прописываешь call MultiboardSetItemStyleBJ
в таком случае есть лишь 3 варианта
первый это не делать того чего делать нельзя и писать на чистом cjass
второй это создать функцию (как сделано в ALL.j) :
void MultiboardSetItemStyleBJFix(multiboard mb, int col, int row, bool showValue, bool showIcon){
	multiboarditem mbitem = MultiboardGetItem(mb, row - 1, col - 1);
	MultiboardSetItemStyle(mbitem, showValue, showIcon);
	MultiboardReleaseItem(mbitem)
}
MultiboardSetItemStyleBJ(mb, col, row, showValue, showIcon) = MultiboardSetItemStyleBJFix(mb, col, row, showValue, showIcon)
третий это дефайн с call (не уверен что сработает):
call MultiboardSetItemStyleBJ(mb, col, row, showValue, showIcon) = {
	mbitem = MultiboardGetItem(mb, row - 1, col - 1);
	MultiboardSetItemStyle(mbitem, showValue, showIcon);
	MultiboardReleaseItem(mbitem) 
}
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
19
6 лет назад
0
Похожие вопросы:

ответ
~16GB:
function AddLocalEffect takes string eff, unit u,player p,string a returns effect
if not IsPlayerAlly(GetLocalPlayer(),p) and GetPlayerState(GetLocalPlayer(),PLAYER_STATE_OBSERVER) == 0 then
set eff = " "
endif
return AddSpecialEffectTarget(eff,u,a)
endfunction
неохота качать JNGP чтоб твой код тестить, заюзай эту функцию

0
20
6 лет назад
0
Я юзаю #define <call > = {}
1
28
6 лет назад
1
а нафига ты явно call и set прописываешь?
MultiboardSetItemStyleBJ(mb, col, row, showValue, showIcon) = {
	mbitem = MultiboardGetItem(mb, row - 1, col - 1);
	MultiboardSetItemStyle(mbitem, showValue, showIcon);
	MultiboardReleaseItem(mbitem) 
}
так вот работает нормально
0
29
6 лет назад
0
call set mbitem=MultiboardGetItem(...
За такое надо расстреливать.
Как так можно вызывать и устанавливать одновременно?
Достаточно убрать call, и ошибки не будет.
1
28
6 лет назад
1
KingMaximax, он компилирует в call set mbitem=MultiboardGetItem(...
если ты не заметил то в коде этого небыло
0
29
6 лет назад
0
nvc123, извините, не заметил. А разве он не повторяет то, что есть в ALL.j?
0
28
6 лет назад
Отредактирован nvc123
0
KingMaximax, а ты видел в ALL.j работу с мультибоардами?
лично я там не нашёл дефайна для MultiboardSetItemStyleBJ
0
29
6 лет назад
0
nvc123:
KingMaximax, а ты видел в ALL.j работу с мультибоардами?
лично я там не нашёл дефайна для MultiboardSetItemStyleBJ
Странно. Я думал, что SirNikolas, который работал над ней, запилил всё, что нужно.
0
18
6 лет назад
0
nvc123:
так вот работает нормально
я уже делал так, в итоге будет это:
call mbitem=MultiboardGetItem(...
Diaboliko:
Я юзаю #define <call > = {}
это тоже не помогает, всё без изменений
1
28
6 лет назад
Отредактирован nvc123
1
UrsaBoss, я проверял и всё работает
возможно ты смешиваешь cjass и jass синтаксис (чего делать нельзя) и прописываешь call MultiboardSetItemStyleBJ
в таком случае есть лишь 3 варианта
первый это не делать того чего делать нельзя и писать на чистом cjass
второй это создать функцию (как сделано в ALL.j) :
void MultiboardSetItemStyleBJFix(multiboard mb, int col, int row, bool showValue, bool showIcon){
	multiboarditem mbitem = MultiboardGetItem(mb, row - 1, col - 1);
	MultiboardSetItemStyle(mbitem, showValue, showIcon);
	MultiboardReleaseItem(mbitem)
}
MultiboardSetItemStyleBJ(mb, col, row, showValue, showIcon) = MultiboardSetItemStyleBJFix(mb, col, row, showValue, showIcon)
третий это дефайн с call (не уверен что сработает):
call MultiboardSetItemStyleBJ(mb, col, row, showValue, showIcon) = {
	mbitem = MultiboardGetItem(mb, row - 1, col - 1);
	MultiboardSetItemStyle(mbitem, showValue, showIcon);
	MultiboardReleaseItem(mbitem) 
}
Принятый ответ
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.