28

» WarCraft 3 / Нужна модель? - Вам сюда!

Nosferoh,
а что нельзя так вставить текстуру чтоб только её часть бралась?
28

» WarCraft 3 / Нужна модель? - Вам сюда!

В общем есть эффект, он делает иконку круглой (не показывая её рамку) , но при этом сильно деформирует её.
Ну исправить деформацую иконки.
Загруженные файлы
28

» WarCraft 3 / Триггерное заклинание: Массив и MUI

Конечно проще, только в джасс я пока что не умею, а без мультиплеера работает на отлично.
делай хэш на гуи тогда. чё сложно что ле?
28

» WarCraft 3 / Какие команды можно отловить во время синематика?

а ты функцию синиматика раскрывал глядел чё внутри? мб там можно убрать отключение контроля?
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
28

» WarCraft 3 / Посчитать количество юнитов в транспорте.

проверь сработает ли входит в регион событие
попробуй поискать разницу в погруженном в транспорт юните и не погруженном, тогда будешь сохранять погруженных юнитов и проверять как-то
28

» S.T.A.L.K.E.R. ORPG / (Долгожданная) Внезапная BETA

Харгард, Кет,
мы говорили именно про замену миникарты, а не о создании нестандартной миникарты
VetsaN,
можно локально
28

» S.T.A.L.K.E.R. ORPG / (Долгожданная) Внезапная BETA

Кет,
И как ты выведешь рисунок на экран? Маской что ле? Да и маска не подходит с ней описания нельзя читать это бред.
28

» S.T.A.L.K.E.R. ORPG / (Долгожданная) Внезапная BETA

и выводи на экран рисунок карты при нажатии на клавишу
Ты не забыл что это варкрафт?
28

» WarCraft 3 / Кэширование абилок движком

зачем вообще было использовать что-то кроме канала и windwalk'a и берсерка , в качестве основ для абилок?
28

» WarCraft 3 / как Проходить сквозь определенных юнитов?

Так как ты хочешь никак. Можно только отключать коллизион (делать летающим, заставлять кастовать стремительность) в опр. момент (если в радиусе бугай например)
28

» WarCraft 3 / Как в этой игре создавать вещи ? DreamPiece 3.4

Nosferoh,
очевидно что карта на китайском, а там сборные вещи, вот он и спрашивает рецепты (для сборки вещей), как можно не догадаться то?
28

» WarCraft 3 / jass и связанная с ним проблема (Именно для моего случая)

Это не jass, а гуи конверт, перепиши код с нативками (common.j) убрав лишнюю ерунду, потом вбрасывай.
Например
было
function MU_Check_lvl_one takes nothing returns boolean
if ( not ( GetUnitAbilityLevelSwapped('A011', udg_Akame_Killer) == 1 ) ) then
return false
endif
return true
endfunction
стало
function MU_Check_lvl_one takes nothing returns boolean
return GetUnitAbilityLevel(udg_Akame_Killer,'A011' ) == 1
endfunction
Ololo
Если совсем не понятно стучи в скайп (есть в профиле) поясню там
28

» WarCraft 3 / Хеш

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
Вот тебе простой спелл из моей карты, тут используются нестандартные функции, поэтому просто так скопировать не выйдет, ну я так для примера.
28

» WarCraft 3 / Библиотека ABuff

Безусловно время простых игр AOS прошло, теперь уже как-то стыдно будет производить "типодоты")
Ну я делаю свой simple aos уже 6 лет, полёт нормальный, люди играют
nvc123:
16GB, есть системы которые писать на структурах в любом случае быстрее
даже если ты не знаешь структур
Например
28

» WarCraft 3 / Библиотека ABuff

nvc123,
Ну тебе быстрее на структурах, мне на хэше. Не говори так будто на структурах в любом случае быстрее писать.
28

» WarCraft 3 / Библиотека ABuff

nvc123,
если в карте присутствует система снарядов/движения то случается
Ну опять же когда автор видит что карта лагает то он переделывает, я лично не видел карт где было много снарядов и это лагало, это же основной аспект в таких картах.
кроме того намного удобнее написать 1 раз на структурах и юзать полученную систему во всех спелах чем каждый раз писать всё заного
Такое видел разве что у тоадкопа, смысла писать такие мощные системы для не очень сложных спелов? нету смысла.