Advertisement
r57shell

gens input visualisation

Dec 10th, 2013
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.45 KB | None | 0 0
  1. local speed = 3;
  2. local inputs = {};
  3. local lastjoy = nil;
  4. local idx = 0;
  5. local L = {left = 5, right = 10, up = 15, down = 20, A = 25, B = 30, C = 35, start = 40, X = 45, Y = 50, Z = 55};
  6. local C = {}
  7. local R = {};
  8. local last = {};
  9. for k, v in pairs(L) do
  10.     R[k] = v+3;
  11.     C[k] = "#0000FF80";
  12. end
  13.  
  14. gens.registerbefore(function ()
  15.     local joy = joypad.get();
  16.     if (lastjoy == nil) then
  17.         for k,v in pairs(joy) do
  18.             if (v and L[k] ~= nil) then
  19.                 local t = {};
  20.                 t.x1 = L[k];
  21.                 t.x2 = R[k];
  22.                 t.c = C[k];
  23.                 t.y1 = 0;
  24.                 t.y2 = 0;
  25.                 t.i = idx;
  26.                 inputs[idx]=t;
  27.                 idx = idx + 1;
  28.                 last[k]=t;
  29.             end
  30.         end
  31.         lastjoy = joy;
  32.     else
  33.         local todel = {};
  34.         for k,v in pairs(inputs) do
  35.             v.y1 = v.y1 + speed;
  36.             v.y2 = v.y2 + speed;
  37.             if (v.y1 > 240) then
  38.                 todel[v.i] = true;
  39.             end
  40.         end
  41.         for k,v in pairs(todel) do
  42.             inputs[k] = nil;
  43.         end
  44.         for k,v in pairs(joy) do
  45.             if (L[k] ~= nil) then
  46.                 if (v) then
  47.                     if (lastjoy[k]) then
  48.                         local t = last[k];
  49.                         t.y1 = 0;
  50.                     else
  51.                         local t = {};
  52.                         t.x1 = L[k];
  53.                         t.x2 = R[k];
  54.                         t.c = C[k];
  55.                         t.y1 = 0;
  56.                         t.y2 = 0;
  57.                         t.i = idx;
  58.                         inputs[idx]=t;
  59.                         idx = idx + 1;
  60.                         last[k]=t;
  61.                     end
  62.                 end
  63.                 --  if (lastjoy[k]) then
  64.                 --      last[k] = nil;
  65.                 --  end
  66.                 --end
  67.             end
  68.         end
  69.         lastjoy = joy;
  70.     end
  71. end)
  72.  
  73. gui.register(function ()
  74.     for k, v in pairs(inputs) do
  75.         gui.box(v.x1,v.y1,v.x2,v.y2,v.c,v.c);
  76.     end
  77. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement