а ты функцию синиматика раскрывал глядел чё внутри? мб там можно убрать отключение контроля?
function CinematicModeExBJ takes boolean cineMode, force forForce, real interfaceFadeTime returns nothing
// If the game hasn't started yet, perform interface fades immediately
if (not bj_gameStarted) then
set interfaceFadeTime = 0
endif
if (cineMode) then
// Save the UI state so that we can restore it later.
if (not bj_cineModeAlreadyIn) then
set bj_cineModeAlreadyIn = true
set bj_cineModePriorSpeed = GetGameSpeed()
set bj_cineModePriorFogSetting = IsFogEnabled()
set bj_cineModePriorMaskSetting = IsFogMaskEnabled()
set bj_cineModePriorDawnDusk = IsDawnDuskEnabled()
set bj_cineModeSavedSeed = GetRandomInt(0, 1000000)
endif
// Perform local changes
if (IsPlayerInForce(GetLocalPlayer(), forForce)) then
// Use only local code (no net traffic) within this block to avoid desyncs.
call ClearTextMessages()
call ShowInterface(false, interfaceFadeTime)
call EnableUserControl(false)
call EnableOcclusion(false)
call SetCineModeVolumeGroupsBJ()
endif
// Perform global changes
call SetGameSpeed(bj_CINEMODE_GAMESPEED)
call SetMapFlag(MAP_LOCK_SPEED, true)
call FogMaskEnable(false)
call FogEnable(false)
call EnableWorldFogBoundary(false)
call EnableDawnDusk(false)
// Use a fixed random seed, so that cinematics play consistently.
call SetRandomSeed(0)
else
set bj_cineModeAlreadyIn = false
// Perform local changes
if (IsPlayerInForce(GetLocalPlayer(), forForce)) then
// Use only local code (no net traffic) within this block to avoid desyncs.
call ShowInterface(true, interfaceFadeTime)
call EnableUserControl(true)
call EnableOcclusion(true)
call VolumeGroupReset()
call EndThematicMusic()
call CameraResetSmoothingFactorBJ()
endif
// Perform global changes
call SetMapFlag(MAP_LOCK_SPEED, false)
call SetGameSpeed(bj_cineModePriorSpeed)
call FogMaskEnable(bj_cineModePriorMaskSetting)
call FogEnable(bj_cineModePriorFogSetting)
call EnableWorldFogBoundary(true)
call EnableDawnDusk(bj_cineModePriorDawnDusk)
call SetRandomSeed(bj_cineModeSavedSeed)
endif
endfunction
проверь сработает ли входит в регион событие
попробуй поискать разницу в погруженном в транспорт юните и не погруженном, тогда будешь сохранять погруженных юнитов и проверять как-то
Так как ты хочешь никак. Можно только отключать коллизион (делать летающим, заставлять кастовать стремительность) в опр. момент (если в радиусе бугай например)
function PainRayCon takes nothing returns boolean
return GetSpellAbilityId() == 'A06W'
endfunction
function PainRayEffect takes nothing returns nothing
local timer t= GetExpiredTimer()
local integer id = GetHandleId(t)
local unit c = LoadUnitHandle(udg_AssassinHash,id,0)
local unit g = LoadUnitHandle(udg_AssassinHash,id,1)
local unit d = LoadUnitHandle(udg_AssassinHash,id,3)
local lightning l = LoadLightningHandle(udg_AssassinHash,id,2)
local real r = ABU(g,d)
local integer i = LoadInteger(udg_AssassinHash,id,4)
local real x = GetUnitX(d)
local real y = GetUnitY(d)
local unit u
if FDFD(g,d) > 40. then
call SetUnitFacing(d,r*bj_RADTODEG)
call SetUnitX(d,SafeX(x+35.*Cos(r)))
call SetUnitY(d,SafeY(y+35.*Sin(r)))
call SetLightningColor(l,0.,1.,0.,1)
call RPX(l,g,c)
call MoveLightningEx(l,false,GetUnitX(c),GetUnitY(c),GetUnitZ(c)+60+GetUnitFlyHeight(c),x,y,GetUnitZ(d)+GetUnitFlyHeight(d))
call SaveInteger(udg_AssassinHash,id,4,i+1)
if i == 2 then
call DestroyEffect(AddSpecialEffectTarget("Abilities\\Spells\\Undead\\Possession\\PossessionMissile.mdl",d,"origin"))
call SaveInteger(udg_AssassinHash,id,4,2)
endif
else
call DestroyEffect(LoadEffectHandle(udg_AssassinHash,id,StringHash("E")))
call DestroyEffect(LoadEffectHandle(udg_AssassinHash,id,StringHash("E2")))
call UnitApplyTimedLife(d,'BTLF',.6)
set r = 75.*GetUnitAbilityLevel(c,'A06W')
call GroupEnumUnitsInRange(udg_G,x,y,350.,null)
loop
set u = FirstOfGroup(udg_G)
if IsTarget(u,c) then
set d = CreateUnit(GetOwningPlayer(u),'h02G',GetUnitX(u),GetUnitY(u),0)
call SetUnitAbilityLevel(d,'A0H7',8)
call UnitApplyTimedLife(d,'BTLF',.5)
call IssueTargetOrder(d,"soulburn",u)
call UnitDamageTarget(c,u,r,true,false,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_MAGIC,null)
call DestroyEffect(AddSpecialEffectTarget("Abilities\\Spells\\Undead\\Possession\\PossessionMissile.mdl",u,"chest"))
endif
call GroupRemoveUnit(udg_G,u)
exitwhen u == null
endloop
call DestroyTimer(t)
call FlushChildHashtable(udg_AssassinHash,id)
call DestroyLightning(l)
endif
set t = null
set g = null
set c = null
set l = null
set d = null
endfunction
function PainRay takes nothing returns nothing
local timer t = CreateTimer()
local unit c = GetTriggerUnit()
local unit g = GetSpellTargetUnit()
local integer id = GetHandleId(t)
local unit d = CreateUnit(GetOwningPlayer(c),'e00K',GetUnitX(c),GetUnitY(c),ABU(g,c)*bj_RADTODEG)
local lightning l = AddLightningEx("CHIM",false,GetUnitX(c),GetUnitY(c),GetUnitZ(c)+50,GetUnitX(d),GetUnitY(d),GetUnitZ(d)+50)
call RPX(l,g,c)
call SetLightningColor(l,0.,1.,0.,1)
call SetUnitScale(d,1.5,1.5,1.5)
call UnitAddAbility(d,'Arav')
call UnitRemoveAbility(d,'Arav')
call SetUnitFlyHeight(d,75.,0)
call SaveEffectHandle(udg_AssassinHash,id,11,AddSpecialEffectTarget("Abilities\\Weapons\\GreenDragonMissile\\GreenDragonMissile.mdl",d,"origin"))
call SaveEffectHandle(udg_AssassinHash,id,12,AddSpecialEffectTarget("Abilities\\Weapons\\snapMissile\\snapMissile.mdl",d,"origin"))
call SaveUnitHandle(udg_AssassinHash,id,0,c)
call SaveUnitHandle(udg_AssassinHash,id,1,g)
call SaveLightningHandle(udg_AssassinHash,id,2,l)
call SaveUnitHandle(udg_AssassinHash,id,3,d)
call TimerStart(t,.03,true,function PainRayEffect)
set t = null
set c = null
set g = null
set l = null
set d = null
endfunction
Вот тебе простой спелл из моей карты, тут используются нестандартные функции, поэтому просто так скопировать не выйдет, ну я так для примера.
если в карте присутствует система снарядов/движения то случается
Ну опять же когда автор видит что карта лагает то он переделывает, я лично не видел карт где было много снарядов и это лагало, это же основной аспект в таких картах.
кроме того намного удобнее написать 1 раз на структурах и юзать полученную систему во всех спелах чем каждый раз писать всё заного
Такое видел разве что у тоадкопа, смысла писать такие мощные системы для не очень сложных спелов? нету смысла.
» WarCraft 3 / Нужна модель? - Вам сюда!
так и надо, анимации все сохранились надеюсь?
» WarCraft 3 / Нужна модель? - Вам сюда!
а что нельзя так вставить текстуру чтоб только её часть бралась?
Ред. 16GB
» WarCraft 3 / Нужна модель? - Вам сюда!
Ну исправить деформацую иконки.
» WarCraft 3 / Не могу найти уроки по хеш-таблицам на GUI
» WarCraft 3 / Триггерное заклинание: Массив и MUI
» WarCraft 3 / SimpleAoS icon pack Doni - the Wrath of the Depths
описание спелов под катом, в посте
Ред. 16GB
» WarCraft 3 / Какие команды можно отловить во время синематика?
Ред. 16GB
» WarCraft 3 / Блокирвка пути
судя по редактору с путями всё нормально, и в игре тоже проверил
» WarCraft 3 / Блокирвка пути
» S.T.A.L.K.E.R. ORPG / (Долгожданная) Внезапная BETA
ты путаешь с CameraBounds
Ред. 16GB
» WarCraft 3 / Посчитать количество юнитов в транспорте.
попробуй поискать разницу в погруженном в транспорт юните и не погруженном, тогда будешь сохранять погруженных юнитов и проверять как-то
Ред. 16GB
» S.T.A.L.K.E.R. ORPG / (Долгожданная) Внезапная BETA
мы говорили именно про замену миникарты, а не о создании нестандартной миникарты
VetsaN,
можно локально
» S.T.A.L.K.E.R. ORPG / (Долгожданная) Внезапная BETA
И как ты выведешь рисунок на экран? Маской что ле? Да и маска не подходит с ней описания нельзя читать это бред.
» S.T.A.L.K.E.R. ORPG / (Долгожданная) Внезапная BETA
» WarCraft 3 / Кэширование абилок движком
» WarCraft 3 / как Проходить сквозь определенных юнитов?
» WarCraft 3 / Как в этой игре создавать вещи ? DreamPiece 3.4
очевидно что карта на китайском, а там сборные вещи, вот он и спрашивает рецепты (для сборки вещей), как можно не догадаться то?
Ред. 16GB
» WarCraft 3 / jass и связанная с ним проблема (Именно для моего случая)
if ( not ( GetUnitAbilityLevelSwapped('A011', udg_Akame_Killer) == 1 ) ) then
return false
endif
return true
endfunction
return GetUnitAbilityLevel(udg_Akame_Killer,'A011' ) == 1
endfunction
Ред. 16GB
» WarCraft 3 / Power Treads при использовании способности предмет меняется на другой предмет как в доте, как мне пе
ну у него костыльно-ориентированное программирование
Впрочем как будто что-то плохое.
» S.T.A.L.K.E.R. ORPG / (Долгожданная) Внезапная BETA
На мой взгляд нереализуемо.
Ред. 16GB
» WarCraft 3 / Хеш
» WarCraft 3 / Power Treads при использовании способности предмет меняется на другой предмет как в доте, как мне пе
» WarCraft 3 / Библиотека ABuff
nvc123: Например
» WarCraft 3 / Библиотека ABuff
Ну тебе быстрее на структурах, мне на хэше. Не говори так будто на структурах в любом случае быстрее писать.
Ред. 16GB
» WarCraft 3 / Библиотека ABuff