SHOW:
|
|
- or go back to the newest paste.
| 1 | -- pastebin get hmHvWqVL tpss.lua | |
| 2 | ||
| 3 | os = require("os")
| |
| 4 | event = require("event")
| |
| 5 | term = require("term")
| |
| 6 | keyboard = require("keyboard")
| |
| 7 | com = require("component")
| |
| 8 | fs = require("filesystem")
| |
| 9 | ||
| 10 | w,h = com.gpu.getResolution() | |
| 11 | ||
| 12 | prog = true | |
| 13 | clearMon = false | |
| 14 | crop = 0.4 | |
| 15 | tSlot = 1 | |
| 16 | timeConstant = 2 | |
| 17 | TPS = {}
| |
| 18 | avgTPS = 0 | |
| 19 | joke = 0 | |
| 20 | logTps = 1 | |
| 21 | logRow = 1 | |
| 22 | ww = w*crop | |
| 23 | hh = h*crop | |
| 24 | ||
| 25 | com.gpu.setResolution(ww, hh) | |
| 26 | ||
| 27 | for tSlot=1,10 do | |
| 28 | TPS[tSlot]=0 | |
| 29 | end; | |
| 30 | ||
| 31 | function minusTime(tc) | |
| 32 | if tc <= 1 then | |
| 33 | return tc | |
| 34 | else | |
| 35 | return tc - 1 | |
| 36 | end; | |
| 37 | end; | |
| 38 | ||
| 39 | function plusTime(tc) | |
| 40 | if tc >= 20 then | |
| 41 | return tc | |
| 42 | else | |
| 43 | return tc + 1 | |
| 44 | end; | |
| 45 | end; | |
| 46 | ||
| 47 | btn = {
| |
| 48 | {
| |
| 49 | x = ww-2, | |
| 50 | y = 1, | |
| 51 | action = function() | |
| 52 | event.ignore("touch", touch)
| |
| 53 | prog = false | |
| 54 | clearMon = true | |
| 55 | end; | |
| 56 | }, | |
| 57 | {
| |
| 58 | x = 13, | |
| 59 | y = 3, | |
| 60 | action = function() | |
| 61 | timeConstant = minusTime(timeConstant) | |
| 62 | end; | |
| 63 | }, | |
| 64 | {
| |
| 65 | x = 21, | |
| 66 | y = 3, | |
| 67 | action = function() | |
| 68 | timeConstant = plusTime(timeConstant) | |
| 69 | end; | |
| 70 | } | |
| 71 | } | |
| 72 | ||
| 73 | function touch(_,_, x, y) | |
| 74 | for i = 1, #btn do | |
| 75 | if x == btn[i].x and y == btn[i].y or x >= btn[i].x + 1 and x < btn[i].x + 3 and y == btn[i].y then | |
| 76 | btn[i].action() | |
| 77 | break | |
| 78 | end; | |
| 79 | end; | |
| 80 | end; | |
| 81 | ||
| 82 | function twenty(flt) | |
| 83 | if flt > 20 then | |
| 84 | return 20 | |
| 85 | else | |
| 86 | return flt | |
| 87 | end; | |
| 88 | end; | |
| 89 | ||
| 90 | function time() | |
| 91 | local f = io.open("/tmp/timeFile","w")
| |
| 92 | f:write("test")
| |
| 93 | f:close() | |
| 94 | return(fs.lastModified("/tmp/timeFile"))
| |
| 95 | end; | |
| 96 | ||
| 97 | while prog == true do | |
| 98 | ||
| 99 | realTimeOld = time() | |
| 100 | os.sleep(timeConstant/10) | |
| 101 | realTimeNew = time() | |
| 102 | ||
| 103 | realTimeDiff = realTimeNew-realTimeOld | |
| 104 | ||
| 105 | TPS[tSlot] = twenty(20000*(timeConstant/10)/realTimeDiff) | |
| 106 | avgTPS = (TPS[1]+TPS[2]+TPS[3]+TPS[4]+TPS[5]+TPS[6]+TPS[7]+TPS[8]+TPS[9]+TPS[10])/10 | |
| 107 | ||
| 108 | event.listen("touch", touch)
| |
| 109 | - | com.gpu.fill(1, 1, ww, hh-2, '█') |
| 109 | + | |
| 110 | com.gpu.setForeground(0x222222) | |
| 111 | -- com.gpu.fill(1, 1, ww, hh-2, '█') | |
| 112 | - | com.gpu.fill(1, 1, ww, 1, '█') |
| 112 | + | |
| 113 | com.gpu.setForeground(0x000080) | |
| 114 | -- com.gpu.fill(1, 1, ww, 1, '█') | |
| 115 | ||
| 116 | term.setCursor(1,1) | |
| 117 | - | print("roga122 tps checker")
|
| 117 | + | |
| 118 | com.gpu.setForeground(0xFFFFFF) | |
| 119 | print("Revector tps checker")
| |
| 120 | ||
| 121 | com.gpu.setForeground(0xff0000) | |
| 122 | com.gpu.fill(ww-2, 1, 3, 1, '█') | |
| 123 | ||
| 124 | term.setCursor(ww-1,1) | |
| 125 | com.gpu.setBackground(0xff0000) | |
| 126 | com.gpu.setForeground(0xffffff) | |
| 127 | print("X")
| |
| 128 | ||
| 129 | ||
| 130 | term.setCursor(1,3) | |
| 131 | com.gpu.setForeground(0xffffff) | |
| 132 | com.gpu.setBackground(0x222222) | |
| 133 | print("Частота:", timeConstant/10)
| |
| 134 | ||
| 135 | term.setCursor(1,4) | |
| 136 | com.gpu.setForeground(0xffffff) | |
| 137 | com.gpu.setBackground(0x222222) | |
| 138 | print("TPS сейчас:", string.format("%.2f",TPS[tSlot]))
| |
| 139 | ||
| 140 | term.setCursor(1,5) | |
| 141 | com.gpu.setBackground(0x222222) | |
| 142 | print("TPS средний:", string.format("%.2f",avgTPS))
| |
| 143 | ||
| 144 | term.setCursor(1,7) | |
| 145 | print("Плавность работы визуально:")
| |
| 146 | - | print("История тпс:")
|
| 146 | + | |
| 147 | term.setCursor(1,17) | |
| 148 | -- print("История тпс:")
| |
| 149 | ||
| 150 | com.gpu.setForeground(0xcccccc) | |
| 151 | com.gpu.fill(13, 3, 3, 1, '█') | |
| 152 | ||
| 153 | com.gpu.setBackground(0xcccccc) | |
| 154 | com.gpu.setForeground(0xffffff) | |
| 155 | term.setCursor(14,3) | |
| 156 | print("-")
| |
| 157 | ||
| 158 | com.gpu.setForeground(0xcccccc) | |
| 159 | com.gpu.fill(21, 3, 3, 1, '█') | |
| 160 | ||
| 161 | com.gpu.setBackground(0xcccccc) | |
| 162 | com.gpu.setForeground(0xffffff) | |
| 163 | term.setCursor(22,3) | |
| 164 | print("+")
| |
| 165 | ||
| 166 | ||
| 167 | if joke < ww then | |
| 168 | if (avgTPS > 18) then | |
| 169 | com.gpu.setForeground(0x00FF00) | |
| 170 | elseif (avgTPS < 18 and avgTPS > 13) then | |
| 171 | com.gpu.setForeground(0xFFFF00) | |
| 172 | elseif (avgTPS < 13 and avgTPS > 8) then | |
| 173 | com.gpu.setForeground(0xFF9900) | |
| 174 | else | |
| 175 | - | com.gpu.fill(1, 9, joke, 7, '█') |
| 175 | + | |
| 176 | end; | |
| 177 | --************************************************************ | |
| 178 | com.gpu.fill(joke, 18-TPS[tSlot]/2, 1, TPS[tSlot]/2+1, '█') | |
| 179 | --*********************************************************** | |
| 180 | joke = joke + 1 | |
| 181 | else | |
| 182 | --*********************************************************** | |
| 183 | -- if (avgTPS > 18) then | |
| 184 | com.gpu.setForeground(0x00FF00) | |
| 185 | -- elseif (avgTPS < 18 and avgTPS > 13) then | |
| 186 | -- com.gpu.setForeground(0xFFFF00) | |
| 187 | - | com.gpu.fill(1, 9, ww, 7, '█') |
| 187 | + | -- elseif (avgTPS < 13 and avgTPS > 8) then |
| 188 | -- com.gpu.setForeground(0xFF9900) | |
| 189 | -- else | |
| 190 | com.gpu.setForeground(0x000000) | |
| 191 | -- end; | |
| 192 | com.gpu.fill(1, 8, ww, 10, '█') | |
| 193 | joke = 0 | |
| 194 | end; | |
| 195 | ||
| 196 | if logTps < 11 then | |
| 197 | term.setCursor(logRow+3, hh-1) | |
| 198 | com.gpu.setForeground(0xffffff) | |
| 199 | com.gpu.setBackground(0x222222) | |
| 200 | print(string.format("%.1f",TPS[logTps]))
| |
| 201 | ||
| 202 | term.setCursor(1, hh-2) | |
| 203 | com.gpu.setForeground(0x222222) | |
| 204 | com.gpu.fill(1, hh-2, ww, 1, '█') | |
| 205 | ||
| 206 | term.setCursor(logRow+2, hh-2) | |
| 207 | ||
| 208 | com.gpu.setForeground(0x000000) | |
| 209 | if (TPS[tSlot] > 18) then | |
| 210 | com.gpu.setBackground(0x00FF00) | |
| 211 | elseif (TPS[tSlot] < 18 and TPS[tSlot] > 13) then | |
| 212 | com.gpu.setBackground(0xFFFF00) | |
| 213 | elseif (TPS[tSlot] < 13 and TPS[tSlot] > 8) then | |
| 214 | com.gpu.setBackground(0xFF9900) | |
| 215 | else | |
| 216 | com.gpu.setBackground(0xFF0000) | |
| 217 | end; | |
| 218 | --****************************************************************** | |
| 219 | ||
| 220 | -- com.gpu.fill(logRow+2, 18-TPS[tSlot]/2, 6, TPS[tSlot]/2, '8') | |
| 221 | ||
| 222 | ||
| 223 | print("Сейчас")
| |
| 224 | ||
| 225 | com.gpu.setForeground(0xffffff) | |
| 226 | com.gpu.setBackground(0x222222) | |
| 227 | ||
| 228 | logTps = logTps + 1 | |
| 229 | logRow = logRow + 6 | |
| 230 | end; | |
| 231 | ||
| 232 | if logTps == 11 then | |
| 233 | logTps = 1 | |
| 234 | logRow = 1 | |
| 235 | end; | |
| 236 | ||
| 237 | if tSlot == 10 then | |
| 238 | tSlot = 0 | |
| 239 | end; | |
| 240 | ||
| 241 | tSlot = tSlot + 1 | |
| 242 | ||
| 243 | if clearMon == true then | |
| 244 | term.setCursor(1, 1) | |
| 245 | term.clear() | |
| 246 | com.gpu.setBackground(0x000000) | |
| 247 | com.gpu.setForeground(0x000000) | |
| 248 | com.gpu.setResolution(w, h) | |
| 249 | com.gpu.fill(1, 1, w, h, '█') | |
| 250 | com.gpu.setForeground(0xFFFFFF) | |
| 251 | com.gpu.setBackground(0x000000) | |
| 252 | print("Выход...")
| |
| 253 | end; | |
| 254 | end; |