[ВАЖНО] Общалка кодеров
|
|
SirNikolas | Дата: Суббота, 11 Мая 2013, 18:29:20 | Сообщение # 226 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Что ты подразумеваешь под словом "оптимизировать"? И в какую еще переменную nxd?
|
|
|
|
Волчачка | Дата: Суббота, 11 Мая 2013, 18:49:52 | Сообщение # 227 |
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
| Цитата (SirNikolas) Что ты подразумеваешь под словом "оптимизировать"? И в какую еще переменную nxd? Не nxd, а n сокращение null'a типа не батрачить null <- 4 символа, n<- один символ супер xd
|
|
|
|
Ty3uK | Дата: Суббота, 11 Мая 2013, 22:51:39 | Сообщение # 228 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Напиши свой парсер с преферансом и поэтессами. Хотя можно сделать хитрые дефайны для cJASS.
|
|
|
|
Волчачка | Дата: Суббота, 11 Мая 2013, 22:58:50 | Сообщение # 229 |
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
| Ty3uK, ага типа Код globals integer n = 0 endglobals и сравнивать к примеру это Код loop set p = FirstOfGroup(udg_G) if IsUnitEnemy(c,GetOwningPlayer(p)) == true then call UnitDamageTarget(c,p,100,true,true,ATTACK_TYPE_MAGIC,DAMAGE_TYPE_NORMAL,null) call DestroyEffect( AddSpecialEffectTarget( "Abilities\\Spells\\Human\\MassTeleport\\MassTeleportCaster.mdl", p, "origin" )) endif call GroupRemoveUnit(udg_G,p) exitwhen p == n endloop call GroupClear(udg_G)
Код //=================================== //====Custom Scripts================= globals
integer n = 0
endglobals /==================== //=================================== function Trig_BlinkNoTarget_Conditions takes nothing returns boolean return GetSpellAbilityId() == 'AOws' endfunction function Trig_BlinkNoTarget_Actions takes nothing returns nothing local unit c = GetSpellAbilityUnit() local real x = GetUnitX(c) local real y = GetUnitY(c) local unit p call SetUnitX( c, x + 700 * Cos( GetUnitFacing(c) * bj_DEGTORAD ) ) call SetUnitY( c, y + 700 * Sin( GetUnitFacing(c) * bj_DEGTORAD ) ) set x = GetUnitX(c) set y = GetUnitY(c) call GroupEnumUnitsInRange(udg_G,x,y,450,null) loop set p = FirstOfGroup(udg_G) if IsUnitEnemy(c,GetOwningPlayer(p)) == true then call UnitDamageTarget(c,p,100,true,true,ATTACK_TYPE_MAGIC,DAMAGE_TYPE_NORMAL,null) call DestroyEffect( AddSpecialEffectTarget( "Abilities\\Spells\\Human\\MassTeleport\\MassTeleportCaster.mdl", p, "origin" )) endif call GroupRemoveUnit(udg_G,p) exitwhen p == n endloop call GroupClear(udg_G) call DestroyEffect(AddSpecialEffect("Abilities\\Spells\\Orc\\WarStomp\\WarStompCaster.mdl", x, y)) set c = null set x = 0 set y = 0 endfunction //=========================================================================== function InitTrig_BlinkNoTarget takes nothing returns nothing set gg_trg_BlinkNoTarget = CreateTrigger( ) call TriggerAddAction( gg_trg_BlinkNoTarget, function Trig_BlinkNoTarget_Actions ) call TriggerAddCondition( gg_trg_BlinkNoTarget, Condition( function Trig_BlinkNoTarget_Conditions ) ) call TriggerRegisterPlayerUnitEvent( gg_trg_BlinkNoTarget, Player(0), EVENT_PLAYER_UNIT_SPELL_EFFECT,null) endfunction
Сообщение отредактировал Волчачка - Суббота, 11 Мая 2013, 22:59:09 |
|
|
|
Ty3uK | Дата: Суббота, 11 Мая 2013, 23:02:09 | Сообщение # 230 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| А как же совместимость? Слишком просто. Напиши четкий дефайн, который позволит использовать переменную n, но в нужном контексте будет передавать null. Добавлено (11 Мая 2013, 23:02:09) ---------------------------------------------
Цитата (Волчачка) bj_DEGTORAD Ай-ай-ай
|
|
|
|
Волчачка | Дата: Суббота, 11 Мая 2013, 23:21:51 | Сообщение # 231 |
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
| Это не Ая-яй-яй, это классика. Для сравнения пойдёт, а дефайнов никаких писать не буду. Почему? Просто, честно говоря, я не люблю вообще язык C. Уж прости. :) И да, мне лень. Ах вот ещё, давай кидай урок по джассу 4-ый. Условия кажется, а не то ух какой горазд трындеть, школа уже пустеет без урока на тему "условия". Jass Lesson погибает, братан.
|
|
|
|
Ty3uK | Дата: Воскресенье, 12 Мая 2013, 00:15:50 | Сообщение # 232 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Дуос в аське говорил, что пишет. Жду.
|
|
|
|
Bru | Дата: Воскресенье, 12 Мая 2013, 10:17:41 | Сообщение # 233 |
i<3bo4k@
Группа: Акулы
Сообщений: 4750
Награды: 2
Репутация: 1960
Блокировки:
| Код function Trig_periodicCheck_Actions takes nothing returns nothing local real lx local real ly local integer i = 1 local integer pnum = 1 loop set lx = GetWidgetX(udg_wisp[pnum]) set ly = GetWidgetY(udg_wisp[pnum]) if (lx < GetRectMaxX(udg_r[i]) and lx > GetRectMinX(udg_r[i])) and (ly < GetRectMaxY(udg_r[i]) and ly > GetRectMinY(udg_r[i])) then call RemoveUnit( udg_wisp[pnum] ) set udg_hero[pnum] = udg_h[i] call SetUnitOwner( udg_hero[pnum], GetOwningPlayer(udg_wisp[pnum]), true ) call SetUnitPositionLoc( udg_hero[pnum], Location(GetRectCenterX(udg_spawnrect[pnum]), GetRectCenterY(udg_spawnrect[pnum]))) endif set i = i + 1 call BJDebugMsg("I - " + I2S(i)) set pnum = pnum + 1 call BJDebugMsg("I2 - " + I2S(pnum)) if pnum == 12 then set pnum = 1 endif exitwhen i == 100 endloop endfunction
//=========================================================================== function InitTrig_periodicCheck takes nothing returns nothing set gg_trg_periodicCheck = CreateTrigger() call TriggerRegisterTimerEvent( gg_trg_periodicCheck, 2.00, true ) call TriggerAddAction( gg_trg_periodicCheck, function Trig_periodicCheck_Actions ) endfunction Короче один раз он проганяет цикл и всё. Больше не выводится ничего. Что самое интересное Чего я могу выбрать первого героя? И почему цикл не запускается снова?
|
|
|
|
IIAXAH | Дата: Воскресенье, 12 Мая 2013, 14:33:19 | Сообщение # 234 |
3 уровень
Группа: Проверенные
Сообщений: 72
Награды: 0
Репутация: 26
Блокировки:
| Bru, цикл для Чеков (по pnum) не весь. Высший совет 4 года назад
Сообщение отредактировал IIAXAH - Воскресенье, 12 Мая 2013, 14:33:44 |
|
|
|
Bru | Дата: Воскресенье, 12 Мая 2013, 15:51:35 | Сообщение # 235 |
i<3bo4k@
Группа: Акулы
Сообщений: 4750
Награды: 2
Репутация: 1960
Блокировки:
| Цитата (IIAXAH) Bru, цикл для Чеков (по pnum) не весь. То есть?
|
|
|
|
SirNikolas | Дата: Воскресенье, 12 Мая 2013, 16:40:58 | Сообщение # 236 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Цитата (Bru) call SetUnitPositionLoc( udg_hero[pnum], Location(GetRectCenterX(udg_spawnrect[pnum]), GetRectCenterY(udg_spawnrect[pnum]))) call SetUnitX(udg_hero[pnum], GetRectCenterX(udg_spawnrect[pnum])) call SetUnitY(udg_hero[pnum], GetRectCenterY(udg_spawnrect[pnum])) В крайнем случае call SetUnitPosition(udg_hero[pnum], GetRectCenterX(udg_spawnrect[pnum]), GetRectCenterY(udg_spawnrect[pnum])), но никак не с созданием точки.
У тебя массивы действительно индексуются с единицы, а не с нуля?
|
|
|
|
Bru | Дата: Воскресенье, 12 Мая 2013, 18:15:28 | Сообщение # 237 |
i<3bo4k@
Группа: Акулы
Сообщений: 4750
Награды: 2
Репутация: 1960
Блокировки:
| Цитата (SirNikolas) У тебя массивы действительно индексуются с единицы, а не с нуля? даДобавлено (12 Мая 2013, 18:15:28) --------------------------------------------- а что?
|
|
|
|
Волчачка | Дата: Понедельник, 13 Мая 2013, 02:21:41 | Сообщение # 238 |
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
| Ty3uK, пока он урок напишет, столетия пройдут.
|
|
|
|
bornikkeny | Дата: Среда, 15 Мая 2013, 08:59:48 | Сообщение # 239 |
5 уровень
Группа: Проверенные
Сообщений: 107
Награды: 0
Репутация: 81
Блокировки:
| Парни, если я забыл функции на GUI и т.п. штуки - это плохо?
|
|
|
|
Волчачка | Дата: Среда, 15 Мая 2013, 09:03:53 | Сообщение # 240 |
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
| bornikkeny, делай себе карту памятку, с комментариями. Ничего не забудешь)
|
|
|
|
bornikkeny | Дата: Среда, 15 Мая 2013, 09:50:22 | Сообщение # 241 |
5 уровень
Группа: Проверенные
Сообщений: 107
Награды: 0
Репутация: 81
Блокировки:
| Волчачка, ну, вроде бы я все знаю, но на ГУИ ничегошеньки не получается. А как "конвентну в текст" - сразу мысли проясняются, и идет дело.
|
|
|
|
Bru | Дата: Воскресенье, 26 Мая 2013, 11:49:59 | Сообщение # 242 |
i<3bo4k@
Группа: Акулы
Сообщений: 4750
Награды: 2
Репутация: 1960
Блокировки:
| Скажите, а группа - это по сути своей всё равно что массив юнита?
|
|
|
|
Ty3uK | Дата: Воскресенье, 26 Мая 2013, 12:07:08 | Сообщение # 243 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Нет
|
|
|
|
SirNikolas | Дата: Воскресенье, 26 Мая 2013, 12:28:33 | Сообщение # 244 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Массив прежде всего подразумевает последовательное хранение и доступ по индексу. Как хранятся юниты в группе - неизвестно, и индексы нам недоступны.
|
|
|
|
Волчачка | Дата: Воскресенье, 26 Мая 2013, 14:42:34 | Сообщение # 245 |
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
| Мб отряд - это указатель, хотя бред. Это может быть и объектом или классом.
|
|
|
|
Ty3uK | Дата: Воскресенье, 26 Мая 2013, 15:05:26 | Сообщение # 246 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Волчачка, классом или объектом класса?
|
|
|
|
Волчачка | Дата: Воскресенье, 26 Мая 2013, 15:29:20 | Сообщение # 247 |
САЙТ УМЕР ППЦ
Группа: Проверенные
Сообщений: 1361
Награды: 0
Репутация: 2165
Блокировки:
| Ty3uK, больше классом, а юниты объектами этого класса. Скорее всего так.
|
|
|
|
SirNikolas | Дата: Воскресенье, 26 Мая 2013, 18:17:29 | Сообщение # 248 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| ^ Человек не разбирается в ООП.
|
|
|
|
Капитан_Очевидность | Дата: Воскресенье, 26 Мая 2013, 18:53:55 | Сообщение # 249 |
1 уровень
Группа: Пользователи
Сообщений: 13
Награды: 0
Репутация: 0
Блокировки:
| ^Вот так вот, взял и оскорбил вандала.î А еще модератор.
|
|
|
|
Ty3uK | Дата: Воскресенье, 26 Мая 2013, 19:10:58 | Сообщение # 250 |
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
| Цитата (Волчачка) больше классом, а юниты объектами этого класса. Скорее всего так. Класс - это описание типа, объект которого потом можно создать. Нельзя говорить про класс, говоря про объекты. Хотя возможно я и сам глуп и несу несуразицу.
|
|
|
|