Модифицирую кнопку под пик

Роман

Активный
12 Май 2016
88
0
Вот гайд https://customgames.ru/tutorial/panorama-sozdaem-prostuyu-knopku .
Вообщем хочу переделать эту кнопку под пик, что я делаю.Иду в луа,и js.
Код:
function onBtnTestClick(event){
  $.Msg("onBtnTestClick") // вывод в консоль

  var plyID = Game.GetLocalPlayerID(); // Game - глобальная штука, смотри API JS

  var data = {		// Обьект для передачи в Луа
    playerID: plyID, 
    msg: event     // аргумен, который указывали в хмл onactivate="onBtnTestClick('myArgument')
  }

  // кладем 					   "придуманное_имя_события" и наш обьект
  GameEvents.SendCustomGameEventToServer( "event_test",       data ); 

}

Код:
function GameMode:OnTest( keys )
 for k,v in pairs(keys) do
  print(k,v)
   PlayerResource:ReplaceHeroWith(v, "npc_dota_hero_night_stalker", 0, 0)
 end

end
Значит для начала, как типичный ноунейм в программировании и языке луа. Беру и ставлю у команды
PlayerResource:ReplaceHeroWith(v, "npc_dota_hero_night_stalker", 0, 0)
Как айди игрока ставлю v и что же происходит, кажется, что все работает ,но нет у нас ещё и пишеться по мимо айди игрока ещё и эта строчка из js. Казалось бы удалил её и все но это слишком просто. Тут в моей голове пришло 2 варианта норм изучуть for и pairs из луа, либа юзать что нибудь другое. Пока остановился на 1.Пошел гуглить pairs lua. Вот что я нашел http://www.lua.ru/doc/5.1.html
pairs (t)

Возвращает три значения: функцию next (результат вызова, примечание переводчика), таблицу t, и nil, поэтому конструкция


for k,v in pairs(t) do body end

будет выполнять итерацию по всем ключевым парам таблицы t.

См. предупреждения для функции next если Вы хотите в процессе итерации модифицировать таблицу.
И брат этой функции

ipairs (t)

Возвращает три значения: итератор, таблицу t, и 0, поэтому конструкция


for i,v in ipairs(t) do body end

будет выполнять цикл парами (1,t[1]), (2,t[2]), ···, до первого целого ключа, отсутствующего в таблице.
И вижу я, что у ipairs есть массив, но не знаю ,как его сюда написать заместо v...
PlayerResource:ReplaceHeroWith(v, "npc_dota_hero_night_stalker", 0, 0)
Вот такой вопрос ноунейма в луа, подскажите плз
 
Последнее редактирование модератором:
Роман, че ты несешь то вообще чекнутый, на русском говори
 
Он своим энтузиазмом меня напоминает, когда я только моддингом начинал заниматься.
Однако да, мою речь люди разбирали и я даже какие-то моменты описывал доселе малоизведанные потому что ими никто не интересовался, а черт разбери о чем он порой говорит.
 
Илья, он помоему форум использует как свой дневник
 
[quote author=I_GRIN_I link=topic=1608.msg10587#msg10587 date=1500238582]
Илья, он помоему форум использует как свой дневник
[/quote]

Я приблизительно так же делал. Просто тогда трудно было оценить сложность проблемы/вопроса. Поэтому после 30 минут безуспешных поисков ответа, выкладываешь вопрос. Но не останавливаешься на этом и продолжаешь искать решение. В результате через часа два его находишь неведомым образом, но на форуме то люди не так часто появляются, в итоге отписываешься о решении сам.

Например тот же Den4icc иногда подобные посты делает : )
 
Реклама: