Слушатели

RecoveryIt

Активный
7 Май 2016
75
0
Корректна ли следующая запись?
Код:
ListenToGameEvent('dota_player_gained_level', Dynamic_Wrap(GameMode, 'OnPlayerLevelUp'), self)
ListenToGameEvent('dota_player_gained_level', Dynamic_Wrap(GameMode, 'SomeFunction1'), self)
ListenToGameEvent('dota_player_gained_level', Dynamic_Wrap(GameMode, 'SomeFunction2'), self)
А также, если использовать custom_events , как должен выглядеть слушатель?
Есть предположение что так же как и стандартные , но что то не идет, хотя мб я где-то косячу :-[
 
[quote author=RecoveryIt link=topic=967.msg4934#msg4934 date=1465988362]
Корректна ли следующая запись?
Код:
ListenToGameEvent('dota_player_gained_level', Dynamic_Wrap(GameMode, 'OnPlayerLevelUp'), self)
ListenToGameEvent('dota_player_gained_level', Dynamic_Wrap(GameMode, 'SomeFunction1'), self)
ListenToGameEvent('dota_player_gained_level', Dynamic_Wrap(GameMode, 'SomeFunction2'), self)
А также, если использовать custom_events , как должен выглядеть слушатель?
Есть предположение что так же как и стандартные , но что то не идет, хотя мб я где-то косячу :-[
[/quote]
Код:
CustomGameEventManager:RegisterListener("custom_event", Dynamic_Wrap( GameMode,"somefunction"))
 
Последнее редактирование модератором:
[quote author=CryDeS link=topic=967.msg4935#msg4935 date=1465988556]
Код:
CustomGameEventManager:RegisterListener("custom_event", Dynamic_Wrap( GameMode,"somefunction"))
[/quote]

То есть такой же как и для ивентов из панорамы? Спасибо.
А что насчет первого вопроса? Могу я их так использовать?
 
Последнее редактирование модератором:
То есть такой же как и для ивентов из панорамы? Спасибо.
А что насчет первого вопроса? Могу я их так использовать?
Несколько слушателей можешь вполне, а вот для кастомных вроде надо через кастомэвентменеджер
 
Последнее редактирование модератором:
Несколько слушателей можешь вполне, а вот для кастомных вроде надо через кастомэвентменеджер

Я щас чекаю гитхаб PMP от Noya , у него имеется 2 кастомных ивента, вот код который он использует для них:
Код:
FireGameEvent( 'ability_values_send', { player_ID = pID, val_1 = 0, val_2 = 0, val_3 = 0, val_4 = 0, val_5 = 0, val_6 = 0 } )
FireGameEvent( 'ability_values_send_items', { player_ID = pID, val_1 = 0, val_2 = 0, val_3 = 0, val_4 = 0, val_5 = 0, val_6 = 0 } )
Как я понял, этими строчками он их запускает вручную. Но чот не могу найти слушатели для них, ибо ни в обычных ListenToGameEvent, ни в CustomGameEvent их нет.
 
Последнее редактирование модератором:
Проверил. Предположение подтвердилось, слушатель для custom_event такой же как и для стандартных - ListenToGameEvent.
С помощью FireGameEvent запускаешь когда нужно, ну и следовательно, функция из слушателя, делает то что ты хочешь.
Общий вид того, что я делал:
Код:
"CustomEvents"
{
	"test_event"
	{
		"TestText"		"string"
		"TestValue"		"short"
	}
}

Код:
ListenToGameEvent("test_event", Dynamic_Wrap(GameMode, 'OnTestEvent'), self)

Код:
FireGameEvent('test_event', { TestText = "TEST TEXT FOR EVENT", TestValue = 4 })
Код:
function GameMode:OnTestEvent( event )
 local text = event.TestText
 local number = event.TestValue
 DebugPrint(text)
 DebugPrint(number)
end
 
Последнее редактирование модератором:
Реклама: