ZHQVKRGVC55Y5H64KCPSUHR5A2U5CQ4FLHWOR4WO3JH6TD4R4C7AC A67TADBDAKCIKT2WXQR7OBOURK3RYWPRNMOK7KSLSKR7LY5YGBFQC QXH7FQHFQBYFN7EPTFCQHZL6CL2K7F7BX4LA7H42Y2OR66N5LCAQC X3NAAYZGEELD44KSK7YBOY3X2OXMQO3A46B5DVCN6WDS2ODA6E5QC OHRBPQ3TRJJ5C7JXXEVTKPKZTSOMH75CLPFZ3FY2HPBA6KLTMIXAC YASTFHTECB4SLOHBRREMWGEVDSNUC2USP7P4PJLXZPKC3J5G3CKQC OOJNURPN3F233MRWKQ6LOEZCVM627WMGRHYXTQ6TFX5W6QEQLNMQC R5QXEHUIZLELJGGCZAE7ATNS3CLRJ7JFRENMGH4XXH24C5WABZDQC JBMY3NW7Z4SQWVWDFRKXSNC4HLEVCZJVFOFPW5VTY2CKWQNVKKGQC JIBCE66ZTWM5WEHEHNKKTRWBJQSQWBDDWPMOJIJR5Q676OSHYCNAC ENUAMRVLNYIRMK344W52ONNAFM4URM7PEERPW47ZXTIO2SOIOVEQC FWZXTL7BUJAGF5I3X4G74KWRT2BFBH3TMYQNCODGNTQ2S74GJRXAC OEJIDMZ2F2WEV7N7PSLMJL3RG55ZHI552AQJUTCG27XRT4VZTRUAC 7TQAF4BYIK75EEYCCK7VEUSZHNCWMWIA3HZGQKIILYESUZ5ZZRVQC ZXQ2MMPAOIA4TN3TWMFPXZUL7NUE3EWXLV2JHBQXEINE7WCKFSIQC UGWH4VEHN5G6REWZU6BCXZ57AFU7PGK4MULMMHMJCMEMVVEDH2KAC CCMG4VMKBKBL5ZCUBAVJWCBOGRHS34VB2OH2A24PHALBITX3TNBAC R5HNWYMH47LWVHS5VVXNR6TCBDXDURVXZ6RCUNFTTTMIXF275ULQC BF7TW3EKRIDYC6J2Q2J4YOBAVQF55Y3H6KGZIHNXMH4N72MR6GXQC 6C3UZDESM2HPFIHAW5YIPUV6VXO4YV5DIEY574HUGP2DGOQNUVOAC RNH2W5MPZBXJ6QCAXLYPU72ILMPMIDBKTMSENFWUK3ESZXSTUP7QC QZA5SWQKZDFIKPD72DUNGRUJM7F3DB4IAF74AYMGM4FIMQMMQQFQC UNPWB53SP3OIN2FEUK6L3YCKYXWEKPRGU3MPGGVLHH2WDTIR4TFQC 7P3EK7K2AWA3YDMQBFWJY4TVIKGJ5LI7E4P4F7Z2CVAGVETA3JHAC draw_debug_definitions = function()for k,def in pairs(Definitions) doApp.color{r=1, g=0, b=0}-- love.graphics.rectangle('line', vx(def.x-20), vy(def.y-20), scale(620), scale(30))love.graphics.rectangle('line', vx(def.x-20), vy(def.y-20), scale(def.w+20), scale(def.h+60))endfor _,cand in ipairs(Spawn_candidates) doApp.color{r=0.4, g=0.8, b=0.4}love.graphics.rectangle('line', vx(cand.x), vy(cand.y), scale(800), scale(140))love.graphics.print(cand.name, vx(cand.x), vy(cand.y))endend
-- return true if a is less than some distance from boverlapping_areas = function(a, b)return overlapping_intervals(a.x, a.x+a.w, b.x-20, b.x+b.w+20)and overlapping_intervals(a.y, a.y+a.h, b.y-20, b.y+b.h+60) -- leave more space below existing definitionsend
Spawn_candidates = {}for _=1,10 dolocal result = {w=600, h=100}result.x = math.random(Viewport.x, Viewport.x+Viewport.w)result.x = round(result.x/100)*100result.y = math.random(Viewport.y, Viewport.y+Viewport.h)if _ == 10 or not overlaps_any_definition(result) thenresult.w, result.h = nilresult.x = result.x + 100result.y = result.y + 20return resultendtable.insert(Spawn_candidates, result)endend
animate(new_definition)elseif chord == 'M-1' thenif Debug_draw_fn ~= draw_debug_ui1 thenDebug_draw_fn = draw_debug_ui1elseDebug_draw_fn = nilend