Сейчас 18:15:26 Четверг, 18 апреля, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » Revive Hero (GUI ошибки.)
Revive Hero
Artas_UndeadДата: Понедельник, 15 Марта 2010, 20:43:46 | Сообщение # 26
9 уровень
Группа: Проверенные
Сообщений: 1953
Награды: 0
Репутация: 365
Блокировки:
Quote (FkoFF)
там вейт на 6 секунд стоял, перед респавном, валил я героев большими пачками, по 3-4 героя в секунду, и перерождались все обсолютно. Вообщем, готов кушать свою кепку за *лицоладонь*?

Во-первых, про кепку говорили не мне, во-вторых я ничего и не отвечал на кепку.

Итак, идёт Капитан ОЧЕВИДНОСТЬ!
У тебя в триггере есть GetDuyingUnit(), которое относится не только к героям, так что скорее всего твой герой не возрождался изза того что был убит какой-то юнит. Переменная сменилась на обычного юнита, но функция то возрождает только героев и юнитов она игнорирует.
И вобще, что, так сложно сначала записать героя в локалку и потом её использовать? Зачем тра кхм, мучать людей?

Добавлено (15-03-2010, 20:43)
---------------------------------------------

Quote (FkoFF)
Данное замечание несло бы в себе хоть что то, если бы я написал нечто в духе "сынок" "браток" и этому подобное.

Данное замечание несло бы в себе хоть что то, если бы ты не писал раньше нечто в духе "сынок" "браток" и этому подобное.
 

SvyagaДата: Понедельник, 15 Марта 2010, 20:44:02 | Сообщение # 27
7 уровень
Группа: Проверенные
Сообщений: 472
Награды: 0
Репутация: 65
Блокировки:
Quote (Artas_Undead)
И вобще, что, так сложно сначала записать героя в локалку и потом её использовать? Зачем тра кхм, мучать людей?

Он просто спорит, когда ещё не проверил мою систему :D
 

FkoFFДата: Понедельник, 15 Марта 2010, 20:47:09 | Сообщение # 28
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
Quote (Svyaga)
Он просто спорит, когда ещё не проверил мою систему

не проверил, верно )


 

Artas_UndeadДата: Понедельник, 15 Марта 2010, 20:48:12 | Сообщение # 29
9 уровень
Группа: Проверенные
Сообщений: 1953
Награды: 0
Репутация: 365
Блокировки:
Quote (FkoFF)
не проверил, верно )

Pwned!
 

SvyagaДата: Понедельник, 15 Марта 2010, 20:50:59 | Сообщение # 30
7 уровень
Группа: Проверенные
Сообщений: 472
Награды: 0
Репутация: 65
Блокировки:
Quote (Artas_Undead)
Данное замечание несло бы в себе хоть что то, если бы ты не писал раньше нечто в духе "сынок" "браток" и этому подобное.

Ну вообще-то это не правильно)
Правильный вариант - оно и несёт в себе, и не только "хоть что-то", так как он говорил нечто в духе "сынок"))))


Сообщение отредактировал Svyaga - Понедельник, 15 Марта 2010, 20:51:36
 

FkoFFДата: Понедельник, 15 Марта 2010, 21:12:48 | Сообщение # 31
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
Вообщем так, нарыл старую версию карты, заспавнил по комманде 10 героев и 20 крипов, убил их одним кастом. 10 героев переродились. Аппетит проснулся? Ах да, запаситесь кетчупом "балтимор", он, по достоверным источникам, все сделает едой.

 

Artas_UndeadДата: Понедельник, 15 Марта 2010, 21:15:49 | Сообщение # 32
9 уровень
Группа: Проверенные
Сообщений: 1953
Награды: 0
Репутация: 365
Блокировки:
Quote (FkoFF)
Аппетит проснулся? Ах да, запаситесь кетчупом "балтимор", он, по достоверным источникам, все сделает едой.

А я уже поел пельмени =(
Так, никто не знает способа быстро проголодаться?)
 

SvyagaДата: Понедельник, 15 Марта 2010, 21:16:49 | Сообщение # 33
7 уровень
Группа: Проверенные
Сообщений: 472
Награды: 0
Репутация: 65
Блокировки:
Выложи эту старую систему, чтобы это проверить можно было, на словах можно сказать что угодно)
 

Artas_UndeadДата: Понедельник, 15 Марта 2010, 21:16:54 | Сообщение # 34
9 уровень
Группа: Проверенные
Сообщений: 1953
Награды: 0
Репутация: 365
Блокировки:
Quote (FkoFF)
он, по достоверным источникам

Пруф?)
 

FkoFFДата: Понедельник, 15 Марта 2010, 21:40:20 | Сообщение # 35
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
http://slil.ru/28800352
http://dump.ru/file/4442552

Приятного аппетита :)
крипов и героев спавнить через комманду -dia
перед началом бойни очень советую собрать все книги, иначе убьют, хотя переродитесь, куда денетесь )


 

[DUОS]Дата: Понедельник, 15 Марта 2010, 22:10:02 | Сообщение # 36
Группа: Заблокированные
Сообщений: 6279
Награды: 9
Репутация: 1708
Блокировки:
FkoFF,

local unit u = GetDyingUnit()
local real wait = // время ожидания до воскрешения героя
local timer t = CreateTimer()
local timerdialog td = CreateTimerDialog(t)
call TimerDialogSetTitleText(td,"Воскр.:")
if GetLocalPlayer() == GetOwningPlayer(u) then
call TimerDialogDisplay(td,true)
endif
call TimerStart(t,wait,false,null)
call TriggerSleepAction(wait)
if IsUnitAlly(u,Player(0)) then
call ReviveHero(u,GetRectCenterX(gg_rct_имя_ректа_красных),GetRectCenterY(gg_rct_имя_ректа_красных),true)
else
call ReviveHero(u,GetRectCenterX(gg_rct_имя_ректа_врагов_красных),GetRectCenterY(gg_rct_имя_ректа_врагов_красных),true)
endif
call TimerDialogDisplay(td,false)
if GetLocalPlayer() == GetOwningPlayer(u) then
call PanCameraTo(GetUnitX(u),GetUnitY(u))
endif
call DestroyTimerDialog(td)
call DestroyTimer(t)
set u = null
set td = null
set t = null

Бери и пользуйся на здоровье.


НУ И ЧТО ТЕПЕРЬ?


Кликайте на дракошку ;)
 

SvyagaДата: Понедельник, 15 Марта 2010, 22:16:37 | Сообщение # 37
7 уровень
Группа: Проверенные
Сообщений: 472
Награды: 0
Репутация: 65
Блокировки:
Омг я вспомнил один сильный запор в моей системе, вот исправление:
Code
function ReviveHero_Conditions takes nothing returns boolean
return IsUnitType(GetTriggerUnit(), UNIT_TYPE_HERO) and GetUnitTypeId(GetTriggerUnit()) != 'H00F' and IsUnitAlly(GetTriggerUnit(), Player(0)))
endfunction

function ReviveHero_Revive takes unit H returns nothing
call DestroyTimer(GetExpiredTimer())
call ReviveHero( H, GetRectCenterX(gg_rct_HeroSpawn), GetRectCenterX(gg_rct_HeroSpawn), true )
if GetUnitTypeId(H) == 'H00B' or GetUnitTypeId(H) == 'H009' or GetUnitTypeId(H) == 'H00C' or GetUnitTypeId(H) == 'H00A' or GetUnitTypeId(H) == 'H008' then
call IssueImmediateOrder( H, "bearform" )
endif
endfunction

function ReviveHero_Actions takes nothing returns nothing
call TimerStart( CreateTimer(),I2R(GetHeroLevel(GetTriggerUnit())) * 3.00, false, function ReviveHero_Revive(GetTriggerUnit())
endfunction

//===========================================================================
function InitTrigger_ReviveHero takes nothing returns nothing
local trigger t = CreateTrigger()
local integer V = 0
loop
exitwhen V == 16
call TriggerRegisterPlayerUnitEvent( t, Player(V), EVENT_PLAYER_UNIT_DEATH, null )
set V = V + 1
endloop
call TriggerAddCondition( t, Condition( function ReviveHero_Conditions ) )
call TriggerAddAction( t, function ReviveHero_Actions )
set t = null
endfunction

Quote (FkoFF)
Приятного аппетита :)
крипов и героев спавнить через комманду -dia
перед началом бойни очень советую собрать все книги, иначе убьют, хотя переродитесь, куда денетесь )

ОМГ что это такое...Не карта для тестов а ужас. Но система работает, я даже пробовал её менять всячески
В тестовой карте это может работать, так как в ней практически ничего больше и нет кроме этой системы. Но факт остаётся фактом - такая система не будет работать в нормальной законченной карте (знаю на своём опыте) Чтобы подобное работало замени GetDyingUnit() на GetTriggerUnit(), ну или возьми систему к-ую скинул
Quote (|DUОS|)
Бери и пользуйся на здоровье.

Я уже выложил ему работающую систему) Тем более она покороче и побыстрее, ну и она соответствует его системе :) Не говоря уже что моя не использует TriggerSleepAction, а задействует функцию воскрешения через таймер. Ну и вместо того чтоб заносить GetDyingUnit в локалку лучше просто везде писать GetTriggerUnit, что быстрее работает. Единственное что у мя отсутствует это дисплей таймера, но это ему не нужно было вроде, тка что не сделал =)


Сообщение отредактировал Svyaga - Понедельник, 15 Марта 2010, 22:27:03
 

FkoFFДата: Понедельник, 15 Марта 2010, 22:30:48 | Сообщение # 38
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
Quote (Svyaga)
ОМГ что это такое...Не карта для тестов а ужас. Но система работает, я даже пробовал её менять всячески В тестовой карте это может работать, так как в ней практически ничего больше и нет кроме этой системы. Но факт остаётся фактом - такая система не будет работать в нормальной законченной карте (знаю на своём опыте) Чтобы подобнео работало замени GetDyingUnit() на GetTriggerUnit(), ну или возьми систему к-ую скинул

может скажешь что был не прав? )

Добавлено (15-03-2010, 22:30)
---------------------------------------------
Спасибо господа за код, я полагаю тему можно закрывать. )


 

SvyagaДата: Понедельник, 15 Марта 2010, 22:31:06 | Сообщение # 39
7 уровень
Группа: Проверенные
Сообщений: 472
Награды: 0
Репутация: 65
Блокировки:
Quote (FkoFF)
может скажешь что был не прав? )

В чём?)Я не утверждал ведь что твоя тестовая мапа не работает :p ))))
 

FkoFFДата: Понедельник, 15 Марта 2010, 22:34:04 | Сообщение # 40
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
Вы напару утверждали что это не возможно через вейты и через GetDyingUnit()

 

DragoNДата: Вторник, 16 Марта 2010, 14:34:07 | Сообщение # 41
Инквизитор
Группа: Стримеры
Сообщений: 4348
Награды: 7
Репутация: 2776
Блокировки:
кто такой умный закрыл?

El Psy Congroo
 

SvyagaДата: Вторник, 16 Марта 2010, 14:35:00 | Сообщение # 42
7 уровень
Группа: Проверенные
Сообщений: 472
Награды: 0
Репутация: 65
Блокировки:
Quote (FkoFF)
Спасибо господа за код, я полагаю тему можно закрывать. )
 

DragoNДата: Вторник, 16 Марта 2010, 14:35:39 | Сообщение # 43
Инквизитор
Группа: Стримеры
Сообщений: 4348
Награды: 7
Репутация: 2776
Блокировки:
Svyaga, код не рабочий в обоих случаях,тогда зачем крыть?

El Psy Congroo
 

SvyagaДата: Вторник, 16 Марта 2010, 14:37:54 | Сообщение # 44
7 уровень
Группа: Проверенные
Сообщений: 472
Награды: 0
Репутация: 65
Блокировки:
1.Код рабочий (мой по крайней мере :D )
2.В случае если бы действительно был нерабочим: Раз FkoFF'у больше не нужна помощь, то следовательно и тему следует закрыть =)
 

FkoFFДата: Вторник, 16 Марта 2010, 15:17:22 | Сообщение # 45
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
я пологал что рабочий и.. хмм, попросил закрыть тему до того как пошел проверять. выдало порядка 20 ошибок синтаксиса.

 

DoctorGesterДата: Вторник, 16 Марта 2010, 16:43:41 | Сообщение # 46
6 уровень
Группа: Проверенные
Сообщений: 209
Награды: 0
Репутация: 50
Блокировки:
Для самого первого кода нужен жнпг
 

FkoFFДата: Воскресенье, 11 Апреля 2010, 02:17:25 | Сообщение # 47
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
хммм.. и всетаки проблема осталась... и почему то только с одним героем =(

 

Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » Revive Hero (GUI ошибки.)
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz