Cosonic5
Моймозггоритогнем
offline
Опыт:
13,584Активность: |
DaeDR, можно вопрос как ты выучил джасс тут на хгм или есть другие источники? |
10.04.2012, 16:21 | #21
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,167Активность: |
Cosonic5, джасс, скоро будет и гуи... что тебя именно интересует? |
10.04.2012, 16:35 | #22
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Cosonic5
Моймозггоритогнем
offline
Опыт:
13,584Активность: |
quq_CCCP, понять язык джасс, локальные переменные более менее понятны а вот jass нет |
10.04.2012, 16:42 | #23
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,167Активность: |
Cosonic5, а в системе опыта, знания jass ненужны, копируеш триггер и ставиш нстаройки, де написано... Там комментарии, а втот в системе респа надо знать про хешталицу... ну ка её инициализировать, всё стальное так же просто как гуи (ну чтобы работало) |
10.04.2012, 16:49 | #24
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DaeDR
offline
Опыт:
8,074Активность: |
|
10.04.2012, 16:51 | #25
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Cosonic5
Моймозггоритогнем
offline
Опыт:
13,584Активность: |
quq_CCCP, ок спс надеюсь пригодится укажу в титрах обязательно! |
10.04.2012, 16:58 | #26
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,167Активность: |
DaeDR, щяс исправлю... |
10.04.2012, 17:01 | #27
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Cosonic5
Моймозггоритогнем
offline
Опыт:
13,584Активность: |
quq_CCCP, а еще вопрос, если скопировать то в константах нужно убрать распределение опыта? |
10.04.2012, 17:06 | #28
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DaeDR
offline
Опыт:
8,074Активность: |
quq_CCCP, меня смущает вот эта функция(условие триггера распределения)
А если врага убьет не герой, то опыта никто не получит? Это лучше поправить |
10.04.2012, 17:11 | #29
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,167Активность: |
Народ а как насчёт этого решения с хеш таблицей?
» вот код инита хештаблицы и юниов
((код jass
function Bolexp_UnitFiler_Conditions takes nothing returns boolean
return GetOwningPlayer(GetFilterUnit()) == Player(PLAYER_NEUTRAL_AGGRESSIVE) endfunction function Group_SaveCrepsPos_Actions takes nothing returns nothing
local unit uNeutralCreep = GetEnumUnit() local location CreepGuardPos = GetUnitLoc(uNeutralCreep) local integer hashId = GetHandleId(uNeutralCreep) call SaveReal(bj_lastCreatedHashtable,hashId,0,GetUnitX(uNeutralCreep)) call SaveReal(bj_lastCreatedHashtable,hashId,1,GetUnitY(uNeutralCreep)) call SaveReal(bj_lastCreatedHashtable,hashId,2,GetUnitFacing(uNeutralCreep)) set uNeutralCreep = null endfunction function Trig_Init_Creps_Actions takes nothing returns nothing
local group grp = CreateGroup() local boolexpr NeutralFilter = Condition( function Bolexp_UnitFiler_Conditions ) set bj_lastCreatedHashtable = InitHashtable() инит хеш таблицы call GroupEnumUnitsInRect(grp, bj_mapInitialPlayableArea, NeutralFilter) call DestroyBoolExpr(NeutralFilter) call ForGroup(grp, function Group_SaveCrepsPos_Actions) call DestroyGroup(grp) set NeutralFilter = null set grp = null call TriggerClearActions(gg_trg_Init_Creps) call DestroyTrigger(gg_trg_Init_Creps) set gg_trg_Init_Creps = null endfunction =========================================================================== function InitTrig_Init_Creps takes nothing returns nothing set gg_trg_Init_Creps = CreateTrigger( ) call TriggerRegisterTimerEvent(gg_trg_Init_Creps, 0.10, false) call TriggerAddAction( gg_trg_Init_Creps, function Trig_Init_Creps_Actions ) endfunction )) |
10.04.2012, 17:12 | #30
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Vadik29
Choice Battle 1.6а
offline
Опыт:
15,845Активность: |
DaeDR, Если честно, юзать жнгп из за микро оптимизации для этой системы будет глупо т.к. не все им пользуются, а некоторые вообще в корне отвергают..... |
10.04.2012, 17:14 | #31
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DaeDR
offline
Опыт:
8,074Активность: |
quq_CCCP, Нет. Вот так:
» Код
Vadik29, Пусть отвергают их проблемы. Но сделать 2 версии все же можно. Не так и сложно же "перевести" |
10.04.2012, 17:21 | #32
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,167Активность: |
DaeDR, точно? хеш же нельзя инитить сразу? как мультиборд и лейблборд?
quq_CCCP добавил: Vadik29, а где тут JGNP ? всё чисто jass, запустится без всяких надстроек, в любом варе версии выше 1.24а... Я хочу написать на vJass и на сJass (на котором не умею) исключительно для удобства пользователей, а не для того чтобы было... Вдруг нужна наработка, а писать с 0 нужно тратить время, ну а тут готовые наработки, время тратить ненужно... Даже те кто может это написать, всё это бы за 5 мин не сделали... Отредактировано quq_CCCP, 10.04.2012 в 17:30. |
10.04.2012, 17:24 | #33
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DaeDR
offline
Опыт:
8,074Активность: |
quq_CCCP, Кто тебе сказал, что нельзя? Всегда было можно |
10.04.2012, 17:24 | #34
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,167Активность: |
|
10.04.2012, 17:26 | #35
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DaeDR
offline
Опыт:
8,074Активность: |
Они создаются, но просто не могут показаться игроку во время инициализации. |
10.04.2012, 17:26 | #36
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,167Активность: |
DaeDR, а как насчёт использования такой ситемы настроек респауна?
((код jass
local unit u = CreateUnit(Player(12), 'nanm',-292.00,-516.00,270.00)
call StoreDataReal(u,"UnitSpawnX",-292.00) call StoreDataReal(u,"UnitSpawnY",-516.00) call StoreDataReal(u,"UnitSpawnA",270.00) call StoreDataReal(u,"RespTime",45.00) call StoreDataBoolean(u,"CreateDeathFX", false) call StoreDataString(u,"FxOfMobDeath","Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl") и тд local handle h = ConvertFogState('nanm') call StoreDataReal(h,"RespTime",45.00) call StoreDataBoolean(h,"CreateDeathFX", false) call StoreDataString(h,"FxOfMobDeath","Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl") и так далее... set h = null )) тут мы в триегере инициализации крепим конкретные параметры к конкретному юниту или типу юнита... для простоты и читаемости используются функции похожие на функции из RB систем, но тут небудем об оптимальности так как код исполняется всего раз, так что удобство настройки важнее...
» список доп/функций
((код jass
function StoreDataInteger takes handle pKey, string cKey, integer value returns nothing
call SaveInteger(bj_lastCreatedHashtable, GetHandleId(pKey), StringHash(cKey), value ) endfunction function StoreDataReal takes handle parentKey, string cKey, real value returns nothing
call SaveReal(bj_lastCreatedHashtable, GetHandleId(parentKey), StringHash(cKey), value ) endfunction function StoreDataBoolean takes handle parentKey, string cKey, boolean value returns nothing
call SaveBoolean(bj_lastCreatedHashtable, GetHandleId(parentKey), S2I(cKey), value ) endfunction function StoreDataString takes handle parentKey, string cKey, string value returns nothing
call SaveStr(bj_lastCreatedHashtable, GetHandleId(parentKey), StringHash(cKey), value ) endfunction function GetStoredDataInteger takes handle pKey, string cKey returns integer
return LoadInteger(bj_lastCreatedHashtable, GetHandleId(pKey), StringHash(cKey)) endfunction )) и так далее... |
10.04.2012, 18:23 | #37
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DaeDR
offline
Опыт:
8,074Активность: |
quq_CCCP, Идею работать со string'овыми хендлами я считаю не очень хорошей, ибо очень медленная. А зачем это вообще надо? Ведь нужно, чтобы любой (внесенный в список) моб был воскрешен на его первоначальном месте. Все остальное лишнее. ИМХО |
10.04.2012, 18:47 | #38
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,167Активность: |
DaeDR, вдруг некоторым приодится, респаунить мобов с разными параметрами, временем, эффектом, или заменять, учитывать каике предметы выпадают из конкретного типа, но насчёт строк, как я уже написал тут это неважно, 1 раз за всю игру вызывается... Зато намного выше читаемость и простота настройки, по строкам понятно за что отвечает значение... |
10.04.2012, 18:55 | #39
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DaeDR
offline
Опыт:
8,074Активность: |
quq_CCCP, Разве 1 раз? Это запись производится 1 раз, а считывание то тоже будет при смерти юнита. |
10.04.2012, 19:00 | #40
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|