Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - ElementCoder

Pages: 1 ... 39 40 [41] 42 43 ... 46
601
Lua / Re: The animal crossing team.
« on: September 30, 2012, 11:13:45 am »
Keep it up. If this gets finished it will be awesome :)

602
TI-Nspire / Re: Ti Nspire Minecraft Library!
« on: September 28, 2012, 11:34:54 am »
Way to post your project on my board -_-
I might stop this cuz yours is in Lua with images...I NEED TO LEARN LUA.
Well if it makes you more motivated, my project is on hold for a long time. I have another major project running and a few minor. Next to that I also have school stuff to do so what little time I have will be spent on my main project :)

603
Lua / Re: Screen trouble on startup
« on: September 28, 2012, 10:25:34 am »
@adriweb: Thanks for poiting to it, to be honest I haven't checked for updates in a long time :P. I just found this copy on my old harddrive, and used it :) I'm now using the updated version :D
[edit] it gives me an error: attempt to call method 'getStringWidth' (a nil value) nvm, it works now. Forgot to pass gc to it.

@Jim: Thanks, that fixed the problem! You really know pretty much everything about nspire lua it seems :)

604
Lua / Screen trouble
« on: September 27, 2012, 02:32:29 pm »
Lately I've been running into some trouble with my lua programs on startup. When running the script from the editor in the TINCS, it runs fine. But on startup the screen is all messed up and not how its supposed to be. The code (also in attachment) and screenshots are included below. I don't know what's causing this problem, so any help would be appreciated :)
Code:
Code: [Select]
-- BetterLuaAPI for TI-Nspire
-- Version 2.2 (Aug 28th 2011)
-- Adriweb 2011 -- Thanks to Jim Bauwens and Levak
-- [email protected]
-- Put all this or some of this (be careful, though, some functions use each other) in your code and thank me ;)
-- Remember to put "myGC = gc" in the  on.paint(gc)  function.

-- See the use of that device table in the on.paint function
local function drawPoint(x, y)
myGC:fillRect(x, y, 1, 1)
end

local function drawCircle(x, y, diameter)
myGC:drawArc(x - diameter/2, y - diameter/2, diameter,diameter,0,360)
end

local function drawCenteredString(str)
myGC:drawString(str, (pww() - myGC:getStringWidth(str)) / 2, pwh() / 2, "middle")
end

local function pww()
    return platform.window:width()
end

local function drawXCenteredString(str,y)
myGC:drawString(str, (pww() - myGC:getStringWidth(str)) / 2, y, "top")
end

local function verticalBar(x)
myGC:fillRect(x,0,1,platform.window:height())
end

local function horizontalBar(y)
myGC:fillRect(0,y,platform.window:width(),1)
end

local function drawSquare(x,y,l)
myGC:drawPolyLine({(x-l/2),(y-l/2), (x+l/2),(y-l/2), (x+l/2),(y+l/2), (x-l/2),(y+l/2), (x-l/2),(y-l/2)})
end

local function drawRoundRect(x,y,wd,ht,rd)  -- wd = width, ht = height, rd = radius of the rounded corner
x = x-wd/2  -- let the center of the square be the origin (x coord)
y = y-ht/2 -- same for y coord
if rd > ht/2 then rd = ht/2 end -- avoid drawing cool but unexpected shapes. This will draw a circle (max rd)
myGC:drawLine(x + rd, y, x + wd - (rd), y);
myGC:drawArc(x + wd - (rd*2), y + ht - (rd*2), rd*2, rd*2, 270, 90);
myGC:drawLine(x + wd, y + rd, x + wd, y + ht - (rd));
myGC:drawArc(x + wd - (rd*2), y, rd*2, rd*2,0,90);
myGC:drawLine(x + wd - (rd), y + ht, x + rd, y + ht);
myGC:drawArc(x, y, rd*2, rd*2, 90, 90);
myGC:drawLine(x, y + ht - (rd), x, y + rd);
myGC:drawArc(x, y + ht - (rd*2), rd*2, rd*2, 180, 90);
end

local function fillRoundRect(x,y,wd,ht,radius)  -- wd = width and ht = height -- renders badly when transparency (alpha) is not at maximum >< will re-code later
if radius > ht/2 then radius = ht/2 end -- avoid drawing cool but unexpected shapes. This will draw a circle (max radius)
    myGC:fillPolygon({(x-wd/2),(y-ht/2+radius), (x+wd/2),(y-ht/2+radius), (x+wd/2),(y+ht/2-radius), (x-wd/2),(y+ht/2-radius), (x-wd/2),(y-ht/2+radius)})
    myGC:fillPolygon({(x-wd/2-radius+1),(y-ht/2), (x+wd/2-radius+1),(y-ht/2), (x+wd/2-radius+1),(y+ht/2), (x-wd/2+radius),(y+ht/2), (x-wd/2+radius),(y-ht/2)})
    x = x-wd/2  -- let the center of the square be the origin (x coord)
y = y-ht/2 -- same
myGC:fillArc(x + wd - (radius*2), y + ht - (radius*2), radius*2, radius*2, 1, -91);
    myGC:fillArc(x + wd - (radius*2), y, radius*2, radius*2,-2,91);
    myGC:fillArc(x, y, radius*2, radius*2, 85, 95);
    myGC:fillArc(x, y + ht - (radius*2), radius*2, radius*2, 180, 95);
end

local function drawLinearGradient(color1,color2)
-- syntax would be : color1 and color2 as {r,g,b}.
  -- don't really know how to do that. probably converting to hue/saturation/light mode and change the hue.
  -- todo with unpack(color1) and unpack(color2)
end
---------------  End of BetterLuaAPI

--------------- Start of application

--Variables used throughout the application
--Set api level
platform.apilevel = '1.0'
--'System' variables
width = platform.window:width()
height = platform.window:height()
--Define the various screens and set the main screen
main, blocks, items, mobs, terrain, title = 0, 1 ,2, 3, 4, 5
screen = main
--Array of paint, which will hold all the paint functions for different screens
paint = {}
--All images used in the application
SectionBlocks = image.new("&\000\000\000&\000\000\000\000\000\000\000L\000\000\000\016\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000)\174)\174)\174\204\186\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\200\165J\178)\174\009\170j\178\139\182\009\174\232\169\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000*\174J\178\232\165\232\165\009\170\232\169\009\170*\174\009\170\232\169\232\169\233\169\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\200\165\200\165\009\174*\174\233\169\009\174\009\174\009\170\232\169\232\169\009\174\009\170\232\169\009\170\200\165\200\165\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000J\178J\178\009\170\232\169)\174*\174\232\169)\174\009\174\009\174*\174\009\174\009\170\232\169\009\170\009\174\232\165\009\170)\174*\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000*\174)\174)\174)\174)\174*\174*\174)\174\009\174)\174\009\170\009\174j\178J\178\232\169\232\165\009\170\009\170\232\169\232\169J\174)\174\009\170\232\169\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\172\182J\178\232\169J\174*\174\009\174k\178k\178j\178J\174\009\170\009\170\232\169\232\169\009\174\009\174*\174j\178)\174\232\165\009\170J\174j\178J\178\009\170\232\169\232\169\232\169\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000J\178\009\170\009\170k\178*\174*\174\009\170)\174J\178\009\170\009\170*\174\009\170\232\169)\174)\174\232\165\232\169\009\170)\174*\174\200\165\232\165\009\170J\178j\178*\174\139\182)\174J\174\009\170\135\161\000\000\000\000\000\000\000\000\000\000\200\165\009\170J\174J\178J\178\200\165\232\169\009\170*\174)\174\232\169J\178J\178J\178J\178J\178)\174\009\174\009\174\009\170\009\170)\174\232\169\232\169J\178*\174\009\170\232\169\200\165\232\169\232\169\200\165\232\165\167\161\000\000\000\000\000\000\000\000f\157\200\165\009\170)\174j\178\232\169\009\174\232\169\009\174\009\174\232\169\009\174\009\170\009\174\009\170\232\169*\174k\178j\178*\174)\174k\178J\174\232\169\232\169*\174\232\169\233\169)\174\233\169J\178\232\169%\153\228\144\000\000\000\000\000\000\000\000f\157\167\161\135\161\135\161\232\169J\174k\182J\178*\174\232\169\233\169\200\165\232\169\009\174k\178)\174\232\169)\174\009\170\233\169\233\169\232\169\009\174)\174)\174\009\170\233\169\233\169\009\170\167\161F\157\004\149\195\144\228\144\000\000\000\000\000\000\000\000\134\157E\157f\157f\157E\153\167\161\009\170)\174)\174\009\174\139\182J\178\009\170\009\170\009\174\009\170)\174)\174)\174J\174\009\170\009\170)\174)\174\009\170)\174\009\170\232\169E\153\228\144\228\148\228\144\195\144\131\144\000\000\000\000\000\000\000\000F\157\196\156%\157f\157f\157E\157E\153\135\161\232\169\009\170\232\169\009\170)\174*\174\009\174\232\169\200\165\009\170*\174\009\170)\174j\178)\174)\174\232\169\009\174f\157\228\148\228\144\004\149\005\149\195\144\163\144b\148\000\000\000\000\000\000\000\000\163\156\230\156\005\153E\153F\157\228\156\005\157F\153f\157\167\165k\178)\174\009\170\009\174)\174)\174)\174J\178)\174\200\165\232\169\009\174\009\170\167\161%\153\228\148\228\148\004\149\004\149\228\148\130\144\163\144\130\144\131\152\000\000\000\000\000\000\000\000\005\173\230\164\164\156\195\152%\153\228\156\005\157F\157E\153f\157f\157\134\157)\174\009\174*\174J\178\009\170)\174\009\174\200\165\232\169\200\165E\153\195\144\195\144\195\144\228\148\004\149\004\149\195\148b\148b\144b\148\131\152\000\000\000\000\000\000\000\000\229\168\196\164\229\168\228\168%\157\228\156\228\156\004\157\004\153f\157\135\161f\157F\153\135\161\232\169\009\170\009\170\009\170J\178)\174F\157\228\144\163\144\195\144\195\144\195\144\228\148\228\148\195\144b\148\131\152\131\152b\148\196\160\000\000\000\000\000\000\000\000\005\173\163\156\229\168&\181\228\164\196\160\163\156\163\156\228\156f\157\135\161\135\161f\157\135\161\135\161f\157\009\170\232\165f\157\228\148\228\144\228\148\130\144\195\144\130\144\163\144\163\144\130\144\163\144\164\148\131\152\131\152\131\152\196\164\000\000\000\000\000\000\000\000G\185\228\168\229\168\005\173\196\164\228\168\229\168\163\160\228\152%\153F\157\135\161\135\161\167\165F\157%\153F\157\228\148\005\149\004\149\228\148\228\144\130\144\131\144b\144\130\144\130\144b\144c\148\131\148\131\152\131\152\131\152\163\156\000\000\000\000\000\000\000\000\196\164\196\164\196\164\196\164\229\168\229\168\196\164\196\164\196\160\195\152\196\156F\157%\161\163\152%\153E\153F\157\228\144\195\144\228\144\195\144\228\144\130\144b\144b\148b\148b\144\130\148\130\148\131\152\131\152\163\156\163\156\163\156\000\000\000\000\000\000\000\000\005\173\196\164&\181\006\177(\169\007\169\196\164\131\156\163\156\131\156\163\156\228\156\163\156\196\160\004\153%\153\228\156\004\149b\144\163\144b\144\195\144\163\152\131\152\130\148b\148b\148\163\156\196\164\164\160\131\152\131\152\163\152\131\152\000\000\000\000\000\000\000\000\229\168\228\164\229\168&\181&\177\005\173\196\164\229\172\228\168\163\160\196\160\196\156\007\161\196\164\163\156\163\156\163\156\195\148\164\148b\144\131\156b\148\163\152\130\148b\144\131\152\163\156\163\156\196\160\163\156\131\152\130\148b\148\163\156\000\000\000\000\000\000\000\000\196\164\005\173\196\164\229\168\229\168\005\173\229\168\229\168&\181\006\177\196\164\196\164\164\156\228\164\229\172\131\156\196\164b\144\132\148\163\156\196\164\131\152\163\156\130\152\163\160\196\164\131\152\131\152\163\156\131\152\131\152\163\156\131\152\163\156\000\000\000\000\000\000\000\000\196\164\005\173\196\160\196\160\196\164\229\168\229\168\196\164\229\168\229\172\229\168&\181\229\168\196\164\228\168\163\156\196\164\163\156\130\152\163\156\163\156\164\152\163\152\131\152\131\152\163\156\131\152\163\156\163\156\163\156\196\164\196\160\165\152\131\152\000\000\000\000\000\000\000\000\005\173\229\168\228\168\005\173\229\168\163\160\164\160\163\160\196\160\196\164\196\160&\177&\181\196\164\229\168\196\164&\181\131\152b\144\131\152\131\152\197\156\164\156\131\152\130\148\130\148\131\152\163\156\131\152\163\156\196\160\164\156\164\152b\144\000\000\000\000\000\000\000\000\229\168\196\164\196\164\006\177G\185\229\168\163\160\163\160\196\164\229\168\005\173\005\173\005\173\196\164\005\173\196\164&\181\163\156\131\152\131\152\164\160\164\160\163\156\131\152b\148\130\148\131\152\163\156\131\156b\148\163\156\163\156\131\152\163\156\000\000\000\000\000\000\000\000\196\164\163\156\228\168\005\173\005\177\005\173\006\177\006\177\196\164\196\164\229\168\229\172\196\164\196\164\196\164\229\172\005\173\196\164\131\152\196\164\196\164\131\152\163\156\130\148\130\148\130\152\163\156\196\164\163\156b\148b\148\163\156\196\164\196\164\000\000\000\000\000\000\000\000\196\164\229\168\229\168\228\168\005\173&\181\006\177\005\173\196\164\196\164\229\168\196\164\196\164\228\168\196\164\229\168\005\173\131\152\131\152\131\152\163\156\131\152b\148\130\148\163\156\131\152\163\152\164\160\163\156\131\152\131\152\163\156\164\160\163\156\000\000\000\000\000\000\000\000\005\173\229\168\196\164\196\164\229\168\005\173\006\177\005\173\006\169\006\169G\185\005\177\196\164G\185\005\173\163\156\228\168\163\156\131\152b\148\130\152\163\156\131\152\164\160\164\160\164\152\164\152\131\152\131\152\130\152\163\156\196\164\163\156\163\156\000\000\000\000\000\000\000\000\005\173\228\168\163\156\229\168\229\164\229\164\006\177\005\177\229\164\006\165\005\177\005\173\163\160&\177&\181\196\164\229\168\163\156\163\156b\148\164\160\196\164\164\160\163\156\163\156\131\152\131\152\131\152\163\156b\148\131\152\131\152\163\156b\148\000\000\000\000\000\000\000\000\005\173\196\164\005\173&\177\005\173\196\160\229\168\005\173\228\168\196\164\228\168\229\168\196\164\228\164\006\173(\169\005\173\131\152\163\156\131\152\196\160\164\160\196\160\196\160\163\156\131\152b\148\131\152\163\156\163\156\131\152\163\156\130\152b\144\000\000\000\000\000\000\000\000\000\000\196\164&\181&\177\005\173\196\160\164\160\228\168\229\168\196\160\196\164\196\164\196\164\163\160\005\173\007\169\196\164\131\152\163\156\131\152\163\156\163\156\163\156\196\160\163\156\163\156\163\160\163\156\131\152\163\156\163\156\163\156\131\152\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\173\005\173\229\168\006\165\197\160\228\168\005\173\229\168\006\177\196\160\196\164\229\168\228\168\163\156\163\156\130\152\163\156\131\152\163\152\131\152\163\156\131\152\163\156\196\164\163\156\131\152\131\152\163\156\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\196\164(\169\007\169\229\168&\181&\181\229\168\163\160\228\168\005\173G\185\005\173\131\152b\144\163\156\131\152\131\152b\148\130\148\130\148\163\156\163\156\163\156\131\152\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\196\164\229\168\005\173\005\173\228\168\005\173\228\168&\181\006\177&\181\131\152\163\156\131\152\163\156\131\152b\148\165\152\164\152\131\152\163\156\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\173\229\168\196\164\228\168\228\168\228\164\005\173\005\173\131\152\131\152b\144\196\160\163\156\131\152\165\152\198\152\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\196\164\228\168\005\173\005\173\005\173\005\173\163\156\131\152\196\160\164\160\163\156\163\156\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\173\005\173\196\164\163\160\163\156\131\152\196\164\196\160\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\196\160\131\156\163\156\131\152\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")
SectionItemsTemp = image.new("<\000\000\000<\000\000\000\000\000\000\000x\000\000\000\016\000\001\000\031|\031|\031|\031|\031|\031|\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\031|\031|\031|\031|\031|\031|\031|\031|\031|\031|\031|\031|\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\031|\031|\031|\031|\031|\031|\031|\031|\031|\031|\031|\031|\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\031|\031|\031|\031|\031|\031|\031|\031|\031|\000\128\000\128\000\128\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\000\128\000\128\000\128\031|\031|\031|\031|\031|\031|\000\128\000\128\000\128\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\000\128\000\128\000\128\031|\031|\031|\031|\031|\031|\000\128\000\128\000\128\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\000\128\000\128\000\128\031|\031|\031|\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\2278\2278\2279\2278\2279\2279\2279\227\025\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\025\227\025\2279\2279\2239\2239\2239\2239\2239\2239\2239\2239\2239\2238\2278\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\231\024\227\024\2278\2279\223\230\140\230\136\230\136\230\136\230\136\230\136\230\136\230\136\230\136\230\1409\2239\227\024\227\024\227\024\227\024\227\024\227\024\227\008\161\008\161\008\161\008\161\008\161\008\161\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\023\231\023\231\023\231\023\231\023\2278\223Y\215\007\133\007\129'\129'\129'\129'\129'\129'\129'\129\007\129Y\2159\2239\227\024\227\024\227\024\227\024\227\024\227\008\161\008\161\008\161\008\161\008\161\008\161\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\023\231'\173'\173\228\156\229\152\229\140\006\129\212\174\212\170\146\162\146\162\146\162\146\162\212\166\212\166X\1837\191\007\133\230\1409\223\024\227\024\227\024\227\008\161\008\161\255\255\255\255\255\255\255\255\024\227\024\227\008\161\008\161\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\023\231'\173&\173\227\160\004\153\004\137&\129\244\166\244\166\178\158\146\162\146\162\146\162\212\170\212\166W\1837\191\007\133\230\1409\223\024\227\024\227\024\227\008\161\008\161\255\255\255\255\255\255\255\255\023\227\024\227\008\161\008\161\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\023\231\129\144\128\144\169\181\234\169o\174\145\162\178\158\178\158'\129'\129'\129'\129'\129'\129'\129\007\129Y\2159\2239\227\024\227\008\161\008\161\255\255\255\255{\239{\239\024\227\023\227\255\255\255\255\008\161\008\161\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\2278\227\130\140\129\136\235\169\011\158\144\166\177\162\145\162q\170\006\133\230\132\230\136\230\136\230\136\230\132\230\136\230\1409\2239\227\024\227\024\227\008\161\008\161\255\255\255\255{\239{\239\024\227\024\227\255\255\255\255\008\161\008\161\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\2278\2278\223\229\140\005\133p\174\144\166\210\170\210\174F\133\006\1417\2198\2239\2239\2239\2239\2239\2239\2239\227\024\227\008\161\008\161\255\255\255\255z\239{\239\024\227\024\227{\239{\239\255\255\255\255\008\161\008\161\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\2278\2279\2279\223Y\215\006\129'\129\145\162\177\162\211\174\177\182\005\145\228\152\022\2317\227\024\227\024\2278\2279\2278\227\024\227\024\227\024\227\008\161\007\161\255\255\255\255z\239z\239\024\227\024\227{\239{\239\255\255\255\255\008\161\008\161\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\2279\223\230\140\007\133\212\174\244\166\178\158\146\162\196\128\162\132G\165F\173\195\160\196\160\023\231\024\231\024\227\024\227\024\227\024\227\024\227\024\227\024\231\023\231\229\156\197\156\022\227\023\227z\239{\239\255\255\255\255\008\161\008\161\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\2278\2279\223\230\136\007\129\212\170\244\166\178\158q\170\163\128\130\140F\173%\173\194\164\195\160\021\235\023\231\024\231\024\227\024\227\024\227\024\227\024\231\023\231\021\235\195\160\195\160\021\231\023\227z\239z\239\255\255\255\255\008\161\008\161\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\2278\2279\223\230\136'\129\146\162\178\158'\129\006\1298\2197\227`\148`\148\168\189\136\189\195\160\196\160\023\231\024\231\024\227\024\227\024\231\023\231\228\160\194\160\168\189\169\189a\148b\144\255\255\255\255\008\161\008\161\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\2278\2279\223\230\136'\129\146\162\146\162'\129\230\1328\2238\227b\144`\148\169\189\168\189\194\164\195\160\022\235\023\231\023\231\024\231\023\231\022\235\195\160\194\164\168\189\169\189a\148b\144\255\255\255\255\008\161\008\161\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\2278\2279\223\230\136'\129\146\162\146\162'\129\230\1369\2238\227\023\231\022\231`\148`\152%\177%\177\195\160\196\160\023\231\023\231\196\160\195\160%\177%\177`\148`\148\022\231\023\231\008\161\008\161\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\2278\2279\223\230\136'\129\146\162\146\162'\129\230\1369\2238\227\024\227\023\231b\144a\148&\173%\177\194\164\195\160\021\235\021\235\195\160\194\164%\177&\173a\148b\144\023\231\024\231\008\161\008\161\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\2278\2279\223\230\136'\129\212\170\212\170'\129\230\1369\2239\227\024\227\024\227\023\231\023\231a\148`\148\168\189\136\189\194\164\194\164\168\189\168\189`\152a\148\023\231\023\231\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\2278\2279\223\230\136'\129\212\166\212\166'\129\230\1369\2239\227\024\227\024\227\024\227\023\231b\144`\148\169\189\168\189\193\164\193\164\167\189\168\189`\148b\144\023\231\024\227\024\2278\227\024\227\023\227\023\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\2278\2279\223\230\136'\129W\183W\183'\129\230\1369\223\025\227\024\227\024\227\024\227\024\231\023\231\022\235`\148`\152$\177$\177\193\164\194\164\021\235\023\231\024\227\024\227\024\227\023\227\229\156\228\156\228\156\229\1567\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\2278\223\230\140\007\1297\1917\191\007\129\230\1409\223\025\227\024\227\024\227\024\227\024\231\023\231\022\235`\148`\152%\177$\177\193\164\194\164\021\235\023\231\023\231\024\227\023\2275\231\002\157\000\161\000\157\002\1575\2317\227\024\227\024\227\024\227\025\227\025\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\2278\2278\2279\223Y\211\007\133\007\133Y\2159\2239\227\024\227\024\227\024\227\024\227\023\231\196\160\195\160&\173&\173`\148`\152\168\189\168\189\195\160\196\160\023\231\023\231\228\156\226\156\148\243\145\243\145\243\147\243\001\157\227\156\023\227\024\227\024\227\024\227\025\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\2279\2279\223\230\140\230\1409\2239\227\024\227\024\227\024\227\024\231\023\231\021\235\195\160\194\164%\177&\173`\148`\148\169\189\136\189\194\164\195\160\021\231\022\231\227\160\000\161\146\243\175\243\174\243\176\243\000\161\001\1615\2317\227\024\227\024\227\024\227\025\227\025\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\2279\2279\2239\2279\227\024\227\024\227\024\227\024\231\023\231\196\160\195\160\168\189\168\189`\148a\148\022\235\022\235`\148`\152%\177%\177\195\160\195\160\226\160\000\161-\231K\231\008\223\009\223\176\243\146\243\001\161\227\1567\227\024\227\024\227\024\227\025\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\2278\227\024\227\024\227\024\227\024\227\024\227\024\231\023\231\022\235\195\160\194\164\168\189\169\189`\148b\144\023\231\023\231b\144a\148&\173%\177\194\164\194\160\225\160\000\161.\231,\231\008\223\008\223\174\243\176\243\000\161\001\1575\2317\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\231\023\231\228\160\195\160%\173%\177`\152`\148\022\231\023\231\024\227\024\231\023\231\023\231a\148`\148\168\189\167\189\224\160\224\160\236\222\234\222\233\222\009\223\008\223\009\223\176\243\147\243\002\157\229\156\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\231\023\231\021\235\195\160\194\160%\177&\173a\148b\144\023\231\024\227\024\227\024\227\024\227\023\231b\144`\148\168\189\167\189\224\160\224\160\236\222\234\222\234\222\233\222\008\223\008\223\174\243\145\243\000\161\228\156\023\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227(\165(\165\197\156\195\160\169\189\168\189`\148a\148\023\231\023\231\024\227\024\227\024\227\024\227\024\227\024\231\023\231\021\231\128\148\128\148\205\222\236\222h\206g\210\234\222\234\222,\231K\231\175\243\145\243\000\161\228\156\023\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227(\165(\165\197\156\195\160\169\189\169\189`\148b\144\023\231\024\227\024\227\024\227\024\227\024\227\024\227\024\227\023\2315\231\128\144\128\148\236\222\235\222g\206h\210\236\222\236\222.\231-\231\146\243\148\243\002\157\229\156\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227(\165(\165\239\193\238\193/\202.\202a\148a\148\022\231\023\231\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\229\156\227\156\207\222\237\222h\206h\206\235\222\236\222\224\160\224\160\000\161\000\161\000\161\226\1565\231\023\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227(\165'\165\237\193\237\193/\202/\198b\144b\144\023\231\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\023\227\228\156\001\161\238\222\235\222g\206h\206\237\222\206\226\224\160\225\160\227\160\227\156\228\156\229\156\023\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\023\231b\144a\148\170\185\170\185\237\193\239\193\239\193\239\193(\165)\165\025\227\024\227\024\227\024\227\024\227\024\227\024\227\023\227\228\156\001\161\238\222\236\222\236\222\237\222\128\148\128\148E\173F\173\022\231\023\231\023\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\023\231a\148`\148\169\189\169\185\237\193\015\194\239\189\239\189(\165)\165\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\229\156\226\156\239\218\238\222\238\222\207\222\128\144\128\148'\173'\173\023\231\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\023\231'\173&\173\194\160\195\160'\169(\1651\1981\198\239\189\239\189)\165)\165)\165)\165\024\227\024\227\024\227\024\227\023\2275\231\227\156\225\160\225\160\227\1565\231\022\231\023\231\023\231\023\231\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\023\231'\173'\173\196\160\229\156'\165(\1651\1981\198\239\189\239\189)\165)\165)\165)\165\024\227\024\227\024\227\024\227\024\2277\227\229\156\228\156\228\156\229\156\023\227\023\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\023\231\023\231\023\231\023\231\023\231\024\231\024\227)\165)\1651\1981\1981\1981\198s\206s\206)\165)\165\024\227\024\227\024\227\024\227\024\2278\231\023\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\231\024\227\024\227\024\227\024\227)\165)\1651\1981\1981\1981\198s\206s\206)\165)\165\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227)\165)\165)\165)\165)\165)\165\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227)\165)\165)\165)\165)\165)\165\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\000\128\000\128\000\128\255\255\255\255\255\255\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227\024\227J\169J\169J\169\000\128\000\128\000\128\031|\031|\031|\000\128\000\128\000\128J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169\000\128\000\128\000\128\031|\031|\031|\031|\031|\031|\000\128\000\128\000\128J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169\000\128\000\128\000\128\031|\031|\031|\031|\031|\031|\000\128\000\128\000\128J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169J\169\000\128\000\128\000\128\031|\031|\031|\031|\031|\031|\031|\031|\031|\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\031|\031|\031|\031|\031|\031|\031|\031|\031|\031|\031|\031|\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\031|\031|\031|\031|\031|\031|\031|\031|\031|\031|\031|\031|\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\000\128\031|\031|\031|\031|\031|\031|")
    SectionItems = image.copy(SectionItemsTemp, SectionItemsTemp:width()*0.6, SectionItemsTemp:height()*0.6)
    SectionItemsTemp = nil
--
--Some functions that make life easier
--
--[[
function on.create()
    screen = main
end
]]--

local function refresh()
    platform.window:invalidate()
end
function on.timer()
    refresh()
end
--
--Classes used throughout the app with their belonging functions
--
HitBoxSquare = class()
function HitBoxSquare:init(xIn, yIn, width, height)
     self.x = xIn
     self.y = yIn
     self.width = width
     self.height = height
end

function HitBoxSquare:contains(xMouse, yMouse)
    local sw = self.width
    local sh = self.height
    return (xMouse>=(self.x)) and xMouse<=(self.x+sw) and yMouse>=(self.y) and yMouse<=(self.y+sh)
end
--
--Actual application starting point
hitBoxBlocks = HitBoxSquare(width*0.20, height*0.30, SectionBlocks:width(), SectionBlocks:height())
hitBoxItems = HitBoxSquare(width*0.40, height*0.30, SectionItems:width(), SectionBlocks:height())

function checkSelection()
 if(screen == main) then
    if hitBoxBlocks:contains(mouseX, mouseY) then
        screen = blocks
    end
    if hitBoxItems:contains(mouseX, mouseY) then
        screen = items
    end
 end
 if (screen == blocks) then
 
 end
 if (screen == items) then
 
 end
 if (screen == mobs) then
 
 end
 if (screen == terrain) then
 
 end
end

function on.paint(gc)
    myGC = gc
    paint[screen](gc)
    timer.start(1)
end

function on.mouseDown(x, y)
    mouseX = x
    mouseY= y
    checkSelection()
end

--Screen painting
function on.escapeKey()
    if (screen == main) then
        screen = title
    elseif (screen ~= title) then
        screen = main
    end
end
function on.enterKey()
    if (screen == title) then
        screen = main
    end
end
--Title screen.
paint[title] = function(gc)
    gc:setFont("serif", "bi", 12)
    drawXCenteredString("Minecraft Encyclopedia", height*0.05)
end
--Main screen.    
paint[main] = function(gc)
    gc:setFont("serif", "bi", 12)
    drawXCenteredString("Minecraft Encyclopedia", height*0.05)
    imgX=width*0.20
    imgY=height*0.30
    gc:drawImage(SectionBlocks,imgX, imgY)
    imgX=width*0.40
    gc:drawImage(SectionItems, imgX, imgY)
    timer.start(1)
end
--Blocks screen
paint[blocks] = function(gc)
    gc:setFont("serif", "bi", 12)
    drawXCenteredString("Blocks Section", height*0.01, "top")
    gc:drawRect(0,0, width, height*0.1)
    timer.start(1)
end
--Items screen
paint[items] = function(gc)
    gc:setFont("serif", "bi", 12)
    drawXCenteredString("Items Section", height*0.01, "top")
    gc:drawRect(0,0, width, height*0.1)
    refresh()
end

Screenshots:
How it's supposed to be:
http://imgur.com/WB3ah
How it looks on startup:
http://imgur.com/GR4pC

605
TI-Nspire / Re: nCraft (3D minecraft-like game for the nspire)
« on: September 27, 2012, 10:52:40 am »
We don't care about the graphical glitch :), this is one really awesome program :D ! You sir have my full support on this :)

606
Other / Re: Scanning cellphone screen gives grayscale result
« on: September 27, 2012, 10:50:43 am »
Wow that looks like some trippy math there :P Let's see where my 3D goggles are....

607
Lua / Hitboxes
« on: September 24, 2012, 01:50:13 pm »
While working on a project I found myself in need of detecting whether the mouse was clicked inside a certain area or not. I thought it would be pretty simple since I only needed square 'hitboxes'. I wrote some simple code and figured to share it in case it might be useful to others.

Hitbox code:
Code for the hitbox:
Code: [Select]
HitBoxSquare = class()
function HitBoxSquare:init(xIn, yIn, width, height)
     self.x = xIn
     self.y = yIn
     self.width = width
     self.height = height
end

function HitBoxSquare:contains(xMouse, yMouse)
    local sw = self.width
    local sh = self.height
    return (xMouse>=(self.x)) and xMouse<=(self.x+sw) and yMouse>=(self.y) and yMouse<=(self.y+sh)
end
Mandatory code:
To track mousepresses:
Code: [Select]
function on.mouseDown(x, y)
    mouseX = x
    mouseY = y
    --Other code here
end
To track mousemovement:
Code: [Select]
function on.mouseMove(x, y)
    mouseX = x
    mouseY = y
    --Other code here
end

How to use:
Create the hitbox:
Code: [Select]
hitBox = HitBoxSquare(x, y, width, height)Check if the mouse is clicked inside the hitbox:
Code: [Select]
if hitBox:contains(mouseX, mouseY) then
    --Do something here
end

Using multiple hitboxes:
If you want to use more then one hitbox, checking them by hand is a little too much work. Here's where tables come in handy!
Code: [Select]
-----------------------------------------------
-- Checking multiple hitboxes, the fast way. --
-- ElementCoder, 2012                        --
-----------------------------------------------
HitBoxSquare = class()
function HitBoxSquare:init(xIn, yIn, width, height)
     self.x = xIn
     self.y = yIn
     self.width = width
     self.height = height
end

function HitBoxSquare:contains(xMouse, yMouse)
    local sw = self.width
    local sh = self.height
    return (xMouse>=(self.x)) and xMouse<=(self.x+sw) and yMouse>=(self.y) and yMouse<=(self.y+sh)
end

hb1 = HitBoxSquare(10, 10, 10, 10)
hb2 = HitBoxSquare(10, 25, 10, 10)
hb3 = HitBoxSquare(10, 40, 10, 10)
hitbox = {hb1, hb2, hb3}
hitboxname = {"Hitbox 1", "Hitbox 2", "Hitbox 3"}

function on.paint(gc)
    gc:drawRect(10, 10, 10, 10)
    gc:drawRect(10, 25, 10, 10)
    gc:drawRect(10, 40, 10, 10)
end

function on.mouseMove(x, y)
    mouseX, mouseY = x, y
    for i = 1, 3 do
        if hitbox[i]:contains(mouseX, mouseY) then
            print(hitboxname[i].." contains the mouse!")
        end
    end
end

608
Lua / Re: Look what my Nspire can do
« on: September 24, 2012, 01:29:28 pm »
I would be willing to do that, but unfortunately I have the skills nor the time to do it :( It would be awesome though.

609
TI-Nspire / Re: nCraft (3D minecraft-like game for the nspire)
« on: September 22, 2012, 04:57:04 am »
the problem would likely be differentiating stuff like pumpkins/orange wool or snow/black wool.
snow and black wool? :P

That on a sidenote, I hope you will complete this project. It sounds awesome.

610
TI-Nspire / Re: Ti Nspire Minecraft Library!
« on: September 18, 2012, 01:00:16 pm »
rename your lib to b then call the function locks.
I don't think that's what he means. I think he just wants the functionality of typing "b." and then a menu pops up showing "locks" as an option. To achieve this, go to the program editor and change the name to b.locks.

611
General Calculator Help / Re: gpSP-nspire zipping
« on: September 15, 2012, 05:02:35 am »
Don't you just zip up the rom and name it <filename>.zip.tns ?

612
Lua / Re: Look what my Nspire can do
« on: September 14, 2012, 08:59:21 am »
Are you using the 3.2 TINCS? That is required. It won't prohibit you from using ndless.

613
TI-Nspire / Re: XML2TXT, XML2LUA, TXT2XML, LUA2XML and 2TNS
« on: September 12, 2012, 05:54:54 am »
This is definitely useful! Good job.

614
TI-Nspire / Re: Ti Nspire Minecraft Library!
« on: September 12, 2012, 02:33:11 am »
Way to post your project on my board -_-
I might stop this cuz yours is in Lua with images...I NEED TO LEARN LUA.
You should still continue this :) nspire basic is a good language to mess around with. It did help me learn lua a bit faster.

615
TI-Nspire / Re: Ti Nspire Minecraft Library!
« on: September 11, 2012, 04:21:49 am »
I started a similar project some time ago, with a crafting system (in TI-Nspire Basic :P it worked pretty neat)

Oh wow a TI-nspire Basic Minecraft Library! Good job!
With TI-nspire Basic, I can tell you some things.
Instead of having users type the whole argument blocks(), you can do something like this:
b.locks()
That way you only have to type b. and a menu will pop up (this may or may not be suitable)

Also about the library itself, Diamond ore said it was the rarest ore in the game, but your Emerald ore also says rarest ore in the game?
Only one of them can be the rarest, and here it would be diamond, because emeralds are renewable through trading (which you also didn't mention)

Keep going!
Emerald is still the rarest ORE in the game :P

Any way I could change the menu to make it more efficient?
I think it's quite at its most efficient point.
I'd recommend doing as Jonius7 said , have a b.<block name> style menu (and probably a b.search function too), same for items.
[edit]Stay tuned for my lua minecraft encyclopedia :P (with crafting system(!)8) and images!)

Pages: 1 ... 39 40 [41] 42 43 ... 46