Skip to content

Commit

Permalink
debugging stuff.
Browse files Browse the repository at this point in the history
  • Loading branch information
nagolove committed Jun 19, 2021
1 parent 6d47415 commit f0b5b23
Show file tree
Hide file tree
Showing 7 changed files with 172 additions and 106 deletions.
2 changes: 1 addition & 1 deletion drawstat.tl
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ global type StatisticRender = record
record InitData
signals: Signals
pressed: {string:{boolean}}
level: number
level: integer
font: love.graphics.Font
pause_time: number
x0: number
Expand Down
27 changes: 20 additions & 7 deletions generator.lua
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ require("cmn")
require("nbtypes")

local inspect = require("inspect")
local serpent = require("serpent")

local logfile = love.filesystem.newFile("log-generator.txt", "w")

Expand All @@ -15,7 +16,6 @@ local function generate(
gen,
cmp)


local ret = {}

local ratio = 5
Expand All @@ -28,8 +28,11 @@ local function generate(
table.insert(ret, null)
end

logfile:write('retLen: ' .. tonumber(retLen) .. '\n')
logfile:write('empty ret: ' .. inspect(ret) .. '\n')

for i = 1, retLen do
if math.random() > 0.5 then
if i < 5 then
ret[i] = gen()
end
end
Expand Down Expand Up @@ -81,6 +84,7 @@ local function generate(



logfile:write('ret after: ' .. serpent.block(ret) .. '\n')

return ret
end
Expand Down Expand Up @@ -137,7 +141,6 @@ function generateAll(sig_count, level, dim, soundsNum, map)
function genArrays(sig_count, level, _, soundsNum)
local signals = {}

logfile:write("--pos gen--\n")



Expand All @@ -154,6 +157,7 @@ function generateAll(sig_count, level, dim, soundsNum, map)



logfile:write("--begin pos\n")

signals.pos = generate(sig_count, level,
function()
Expand All @@ -176,7 +180,8 @@ function generateAll(sig_count, level, dim, soundsNum, map)
return a.x == b.x and a.y == b.y
end)

logfile:write("--pos gen--\n")
logfile:write("--end pos\n\n")
logfile:write("--begin form\n")

signals.form = generate(sig_count, level,
function()
Expand All @@ -187,6 +192,9 @@ function generateAll(sig_count, level, dim, soundsNum, map)
return a == b
end)

logfile:write("--end form\n\n")
logfile:write("--begin sound\n")

signals.sound = generate(sig_count, level,
function()
return math.random(1, soundsNum)
Expand All @@ -195,13 +203,18 @@ function generateAll(sig_count, level, dim, soundsNum, map)
return a == b
end)

logfile:write("--end sound\n\n")
logfile:write("--begin color\n")

signals.color = generate(sig_count, level,
function() return colorArr[math.random(1, 6)] end,
function(a, b)
return a == b
end)


logfile:write("--end color\n\n")

signals.eq = makeEqArrays(signals, level)
return signals
end
Expand Down Expand Up @@ -233,9 +246,9 @@ function generateAll(sig_count, level, dim, soundsNum, map)

local result = balance(1)

logfile:write("\n")
logfile:write(inspect(result))
logfile:write("\n")



logfile:close()

return result
Expand Down
31 changes: 22 additions & 9 deletions generator.tl
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ require "cmn"
require "nbtypes"

local inspect = require "inspect"
local serpent = require "serpent"

local logfile = love.filesystem.newFile("log-generator.txt", "w")

Expand All @@ -15,7 +16,6 @@ local function generate<T>(
gen: GenFunction<T>,
cmp: CmpFunction<T>
): {T}

local ret: {T} = {} -- массив сигналов, который будет возвращен
-- значение взято с потолка
local ratio = 5
Expand All @@ -28,8 +28,11 @@ local function generate<T>(
table.insert(ret, null as T)
end

logfile:write('retLen: ' .. tonumber(retLen) .. '\n')
logfile:write('empty ret: ' .. inspect(ret) .. '\n')

for i = 1, retLen do
if math.random() > 0.5 then
if i < 5 then
ret[i] = gen()
end
end
Expand Down Expand Up @@ -81,6 +84,7 @@ local function generate<T>(
----]]

--print('done2')
logfile:write('ret after: ' .. serpent.block(ret) .. '\n')

return ret
end
Expand Down Expand Up @@ -137,8 +141,6 @@ function generateAll(sig_count: integer, level: integer, dim: integer, soundsNum
function genArrays(sig_count: integer, level: integer, _: number, soundsNum: number): Signals
local signals: Signals = {}

logfile:write("--pos gen--\n")

--function(): Signals.Pos
--local result: Signals.Pos = {}
--local x, y = math.random(1, #map), math.random(1, #map[1])
Expand All @@ -155,6 +157,8 @@ function generateAll(sig_count: integer, level: integer, dim: integer, soundsNum
--return result
--end,

logfile:write("--begin pos\n")

signals.pos = generate(sig_count, level,
function(): Signals.Pos
local result: Signals.Pos = {}
Expand All @@ -176,7 +180,8 @@ function generateAll(sig_count: integer, level: integer, dim: integer, soundsNum
return a.x == b.x and a.y == b.y
end)

logfile:write("--pos gen--\n")
logfile:write("--end pos\n\n")
logfile:write("--begin form\n")

signals.form = generate(sig_count, level,
function(): Signals.Forms
Expand All @@ -187,6 +192,9 @@ function generateAll(sig_count: integer, level: integer, dim: integer, soundsNum
return a == b
end)

logfile:write("--end form\n\n")
logfile:write("--begin sound\n")

signals.sound = generate(sig_count, level,
function(): integer
return math.random(1, soundsNum)
Expand All @@ -195,20 +203,25 @@ function generateAll(sig_count: integer, level: integer, dim: integer, soundsNum
return a == b
end)

logfile:write("--end sound\n\n")
logfile:write("--begin color\n")

signals.color = generate(sig_count, level,
function(): string return colorArr[math.random(1, 6)] end,
function(a: string, b: string): boolean
return a == b
end)
--print("color", inspect(signals.color))

logfile:write("--end color\n\n")

signals.eq = makeEqArrays(signals, level)
return signals
end

-- попытка балансировки массивов от множественного совпадения(более двух сигналов на фрейм)
-- случайной перегенерацией
function balance(forIterCount: number): Signals
function balance(forIterCount: integer): Signals
local i, changed = 0, false
local signals: Signals
repeat
Expand All @@ -233,9 +246,9 @@ function generateAll(sig_count: integer, level: integer, dim: integer, soundsNum

local result = balance(1)

logfile:write("\n")
logfile:write(inspect(result))
logfile:write("\n")
--logfile:write("\n")
--logfile:write('result: ' .. serpent.block(result))
--logfile:write("\n")
logfile:close()

return result
Expand Down
8 changes: 4 additions & 4 deletions layout.lua
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ function splith(tbl, ...)
local subTbls = {}
local lasty = tbl.y
for i = 1, select("#", ...) do
local currenth = tbl.h * select(i, ...)
local currenth = tbl.h * math.floor(select(i, ...))
table.insert(subTbls, { x = tbl.x, y = lasty, w = tbl.w, h = currenth })
lasty = lasty + currenth
end
Expand All @@ -99,7 +99,7 @@ function splitv(tbl, ...)
local subTbls = {}
local lastx = tbl.x
for i = 1, select("#", ...) do
local currentw = tbl.w * select(i, ...)
local currentw = tbl.w * math.floor(select(i, ...))
table.insert(subTbls, { x = lastx, y = tbl.y, w = currentw, h = tbl.h })
lastx = lastx + currentw
end
Expand All @@ -120,7 +120,7 @@ end
function splithByNum(tbl, piecesNum)
assertHelper(tbl)
local subTbls = {}
local prevy, h = tbl.y, tbl.h / piecesNum
local prevy, h = tbl.y, math.floor(tbl.h / piecesNum)
for _ = 1, piecesNum do
table.insert(subTbls, { x = tbl.x, y = prevy, w = tbl.w, h = h })
prevy = prevy + h
Expand All @@ -131,7 +131,7 @@ end
function splitvByNum(tbl, piecesNum)
assertHelper(tbl)
local subTbls = {}
local prevx, w = tbl.x, tbl.w / piecesNum
local prevx, w = tbl.x, math.floor(tbl.w / piecesNum)
for _ = 1, piecesNum do
table.insert(subTbls, { x = prevx, y = tbl.y, w = w, h = tbl.h })
prevx = prevx + w
Expand Down
4 changes: 2 additions & 2 deletions layout.tl
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ end
function splithByNum(tbl: Layout, piecesNum: integer): Layout...
assertHelper(tbl)
local subTbls = {}
local prevy, h = tbl.y, tbl.h // piecesNum
local prevy, h = tbl.y, math.floor(tbl.h / piecesNum)
for _ = 1, piecesNum do
table.insert(subTbls, {x = tbl.x, y = prevy, w = tbl.w, h = h})
prevy = prevy + h
Expand All @@ -131,7 +131,7 @@ end
function splitvByNum(tbl: Layout, piecesNum: integer): Layout...
assertHelper(tbl)
local subTbls = {}
local prevx, w = tbl.x, tbl.w // piecesNum
local prevx, w = tbl.x, math.floor(tbl.w / piecesNum)
for _ = 1, piecesNum do
table.insert(subTbls, {x = prevx, y = tbl.y, w = w, h = tbl.h})
prevx = prevx + w
Expand Down
Loading

0 comments on commit f0b5b23

Please sign in to comment.