Метатабличный / Говнокод #19957 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
do
	local name = {"Маша ","Алиса ","Анджела ","Настя ","Петровна ","Василиса ","Олег "}
	local beauty = {"Супер ","Так себе ","Очень даже ничего ","Ужас! "}
	local len_n, len_b = #name, #beauty
	math.randomseed(os.time())

	local kurwa = {}

	function kurwa:cr()
		local t = {}
		t.money = math.random(1000,100000)
		t.name = name[math.random(1,len_n)]
		t.b = beauty[math.random(1,len_b)]
		return setmetatable(t, {__index = self})
	end
	
	function kurwa:say()
		local x
		if self.name ~= name[7] then
			x = " она "
		else
			x = " он "
		end
		print("Имя: "..self.name.."Оплата труда: "..self.money..x..self.b)
	end
	
	for i=1, 5 do --заказываем 5 курв
		table.insert(kurwa, kurwa:cr())
	end
	
	for cv,kw in ipairs(kurwa) do
		print("№"..cv)
		if type(kw) == "table" then
			kw:say()
		end
	end
end

Симулятор Случайных шлюх

Sfabrikan Sfabrikan, (Updated )

Комментарии (65, +65)

Метатабличный / Говнокод #19934 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
строка = {гони_длину = string.len, подстановка = string.gsub, маленькие_буквы = string.lower, большие_буквы = string.upper, гони_кусок = string.sub}
ос = {время = os.time, таймер = os.clock}
таблица = {внедрить = table.insert, удалить = table.remove, сортировка = table.sort, перебери = table.foreach}
матан = {модуль = math.abs, огругление_верх = math.ceil, огругление_низ = math.floor, случайно = math.random, ключ_случайности = math.randomseed}
ввод_вывод = {читать = io.read, записать = io.write, открыть = io.open}
тип = type
вернуть_пару = ipairs
незнаю_как_точно_это_описать = pairs
печатать = print

времечко = ос.таймер()
матан.ключ_случайности(ос.время())
тбл = {}
таблица.внедрить(тбл,{"petux","kurica","arbalet","turnik","ne sluzhil - ne muzhik"})
таблица.перебери(тбл[1], function(k,v) if v == "arbalet" then печатать(строка.гони_длину(v)); таблица.удалить(тбл[1], k) end end)
печатать("---------------------------------------------")
таблица.перебери(тбл[1], print)
печатать("operacia viponena za "..времечко.."sek\n"..строка.большие_буквы("cho tak medleno suka").."\nSluchaynoe chislo ot 1 do 1000: "..матан.случайно(1,1000))

кажись в онлайн интерпретатор и выше версии lua 5.1 это не работает!
но на двиге love2d работает

Sfabrikan Sfabrikan, (Updated )

Комментарии (19, +19)

Метатабличный / Говнокод #19504 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
while false ~= true do
    -- some code
end

всегда так пишу бесконечные циклы на Lua, ибо в этом есть некий философский смысл)))
код будет выполняться пока ложь не станет истиной...

MegaProger MegaProger, (Updated )

Комментарии (4, +4)

Метатабличный / Говнокод #18346 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
local sol_lines = {}
local i = 1; local j = 0;
	
while (i <= solution:len()) do
	local begin_pos = i
	while(i <= solution:len() and solution:sub(i, i) ~= '\n') do
		i = i + 1
	end

	if i > solution:len() then
		i = solution:len()
	end

	local cur_line = solution:sub(begin_pos, i)
	sol_lines[j] = trim(cur_line)
	i = i + 1
	j = j + 1
end

Lua
Как я разбивал строку на отдельные линии. Вместо того, чтобы использовать string.find(s, "\n", i + 1). Так я писал код 0.027397 года назад назад.

Janycz Janycz, (Updated )

Комментарии (28, +28)

Метатабличный / Говнокод #16820 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
function SAEController:GetPointVariableValue(WayNet,CurPoint)
  local waypointVars = {};
  for i = 0, WayNet:GetPointsCount() - 1 do
     local Link = WayNet:GetPoint(i);
    local PlaySound1 = Link:GetVariableValue("PlaySound1");
    local PlaySound2 = Link:GetVariableValue("PlaySound2");
    local PlaySound3 = Link:GetVariableValue("PlaySound3");
    
    local Effect1 = Link:GetVariableValue("Effect1");
    local Effect2 = Link:GetVariableValue("Effect2");
    local Effect3 = Link:GetVariableValue("Effect3");
    
    if PlaySound1 and CurPoint == Link then
      waypointVars.PlaySound1 = PlaySound1;  
    end;
    if PlaySound2 and CurPoint == Link then
      waypointVars.PlaySound2 = PlaySound2;  
    end;
    if PlaySound3 and CurPoint == Link then
      waypointVars.PlaySound3 = PlaySound3;  
    end;
    
    if Effect1 and CurPoint == Link then
      waypointVars.Effect1 = Effect1;  
    end;
    if Effect2 and CurPoint == Link then
      waypointVars.Effect2 = Effect2;  
    end;
    if Effect3 and CurPoint == Link then
      waypointVars.Effect3 = Effect3;  
    end;
  end;
  return waypointVars;
end;

Кусок игровой логики на Lua. Функция проверяет значение переменных в текущей точке пути моба.
Мы перебираем все точки пути и сравниваем с текущей точкой моба, но это не нужно, так как именно текущая точка в функцию и передаётся!

hdkeeper hdkeeper, (Updated )

Комментарии (2, +2)

Метатабличный / Говнокод #16047 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
c1 = true
c2 = true
c3 = true
c4 = true
c5 = true
c6 = true
c7 = true
c8 = true
c9 = true
c10 = true
c11 = true
c12 = true
c13 = true
next = true

function goForward()
  c1 = c2
  c2 = c3
  c3 = c4
  c4 = c5
  c5 = c6
  c6 = c7
  c7 = c8
  c8 = c9
  c9 = c10
  c10 = c11
  c11 = c12
  c12 = c13
  c13 = next
end

Немножко Lua-кода от геймдизайнера.

kostoprav kostoprav, (Updated )

Комментарии (3, +3)