поэтому лучше погуглить решения от спецов в Lua, которые ерунду не понапишут
Я конечно не спец, но ерунду напишу. Простейший пример метатаблиц
Unit = { x = 0, y = 0 }
function Unit:new (id, unitid, x, y, face)
local data = {}
setmetatable(data, self)
self.__index = self
data.unit = CreateUnit(id, unitid, x, y, face)
return data
end
function Unit:x(x)
if x == nil then return GetUnitX(self.unit) end
SetUnitX(self.unit, x)
return self
end
function Unit:y(y)
if y == nil then return GetUnitY(self.unit) end
SetUnitY(self.unit, y)
return self
end
function Unit:xy(x, y)
if x == nil and y == nil then return GetUnitX(self.unit), GetUnitY(self.unit) end
SetUnitX(self.unit, x)
SetUnitY(self.unit, y)
return self
end
function Unit:name(name)
if name == nil then return GetUnitName(self.unit) end
BlzSetUnitName(self.unit, name)
return self
end
local u = Unit:new(Player(0), FourCC('hfoo'), 0, 0, 0)
u:x(13):y(3):name('OOP mazafaka')
function GetUnitsInRectMatching takes rect r, boolexpr filter returns group
local group g = CreateGroup()
call GroupEnumUnitsInRect(g, r, filter)
call DestroyBoolExpr(filter)
return g
endfunction
Избыточность информации усложняет и делает невозможным усваивание материала, нельзя начинать учить что-то, давая сразу всю инфу, нужно абстрагировать от глаз всё что происходит за кулисами и скормить лишь суть, как этим воспользоваться.
А потом пропускать мимо ушей критику вооружившись аргументом "работает же" prog:
Drulia_san, фигню понаписал, у тебя методы создаются для каждого экземпляра, а должны для индексной таблицы создаваться один раз, иначе зачем тебе метатаблица и индексная таблица тогда...
Не думай вообще что это такое, знание этого тебе ничего не даст, просто скопируй
И правильно, зачем думать? Просто копируй, потом копируй скопированное, потом на 100500 итерации копирования беги в QA и задавай вопросы в стиле "нииирабоотаит".
function patrol takes nothing returns nothing
local unit f = GetEnumUnit()
local real x = GetOrderPointX()
local real y = GetOrderPointY()
call IssuePointOrder( f, "patrol", x,y)
set f = null
endfunction
ИМХО думаю нужно изначально вывести правило - зачем нужен рейтинг. На данный момент рейтинг не показывает абсолютно ничего. Ведь все мнения неравнозначны. Простейший пример:
Кто-то выкладывает красивый спэлл с отвратительным утечным кодом. 10 кодеров ставят минус ибо код нелицеприятно пахнет, и 100 юзеров ставят плюс ибо на видео всё красиво. Рядовой юзер видет соотношение и решает что спэлл хорош и плодит распространение говнокода в массы.
но были реально перегибы, когда новичка незаслуженно гнобили.
Если новичёк не умеет пользоваться гуглом и читать буквы то это одно, а если спрашивает ньюанс, который знает 3.5 человека на сайте, то то другое. Грань тонка.
Да ещё не указаны все авторы и ссылки на модели. И все текстуры наверно лежат в корте и поэтому начнётся квэст - найди все используемые моделью текстуры.
» WarCraft 3 / Lua и ООП
» WarCraft 3 / UnitGroup течет (DestroyGroup не помогает)
» WarCraft 3 / Lua и ООП
prog:
» WarCraft 3 / В hashtable один массив на все handle?
» WarCraft 3 / Lua и ООП
» WarCraft 3 / Lua и ООП
» WarCraft 3 / Lua и ООП
» WarCraft 3 / Возмездие: пакт Паладина (V1. 4)
» WarCraft 3 / Моя попытка создания системы отрядов, версия 1.26a
» WarCraft 3 / Рамка иконки - Warcraft 3 Reforged (Button Manager)
» WarCraft 3 / двигать даммика каждые 005 сек мгновенно в x,y
» Администрация XGM / Нестареющая классика — футболки XGM
» WarCraft 3 / [lua] Собираем lua с помощью lua
» Администрация XGM / Рейтинг на сайте
» Администрация XGM / Рейтинг на сайте
Кто-то выкладывает красивый спэлл с отвратительным утечным кодом. 10 кодеров ставят минус ибо код нелицеприятно пахнет, и 100 юзеров ставят плюс ибо на видео всё красиво. Рядовой юзер видет соотношение и решает что спэлл хорош и плодит распространение говнокода в массы.
» Администрация XGM / Рейтинг на сайте
» WarCraft 3 / Редактор карт, триггеры
» Администрация XGM / Нестареющая классика — футболки XGM
» Администрация XGM / Нестареющая классика — футболки XGM
Ред. nazarpunk
» WarCraft 3 / HISTORI WOW PLATFORMA GOTOVA
Модели
» WarCraft 3 / Вапиризм от способностей или как словить урон по юнитам?
» WarCraft 3 / HISTORI WOW PLATFORMA GOTOVA
» WarCraft 3 / HISTORI WOW PLATFORMA GOTOVA
» WarCraft 3 / HISTORI WOW PLATFORMA GOTOVA
Ред. nazarpunk
» WarCraft 3 / [lua] Собираем lua с помощью lua