[READ-ONLY] Mirror of https://github.com/thoda-dev/du_render_script_library. A library to build renderscript in boards without writting it as a full string
0

Configure Feed

Select the types of activity you want to include in your feed.

support for third party libraries like atlas or dkjson

Thomas (Apr 13, 2023, 8:49 PM +0200) 4dbbcdeb a0d41c65

+28 -2
+1 -1
README.md
··· 14 14 script:addBox(MyFirstLayer,0,0,100,100) 15 15 16 16 if not script:isTooLong() then 17 - screen.setRenderScript(tostring(script)) 17 + script:sendToScreen(screen) 18 18 else 19 19 system.print("WARNING: Script too long!! Length is actualy " .. script:len() .. " / " .. script:getMaxSize()) 20 20 end
+26
RenderScript.lua
··· 385 385 self._s = self._s .. line .. '\n' 386 386 end, 387 387 388 + 389 + --************************************************************************************************************ 390 + -- Third party libraries support 391 + --************************************************************************************************************ 392 + 393 + --- Use a third party library in the renderscript 394 + ---@param libraryName string The name of the library to use 395 + use = function (self, libraryName) 396 + self._s = self._s .. 'local ' .. libraryName .. '=require("' .. libraryName .. '");' 397 + end, 398 + 399 + --- Use the Atlas library in the renderscript 400 + useAtlas = function (self) 401 + self._s = self._s .. 'local atlas=require("atlas");' 402 + end, 403 + 404 + --- Use the JSON (dkjson) library in the renderscript 405 + useJSON = function (self) 406 + self._s = self._s .. 'local json=require("dkjson");' 407 + end, 408 + 409 + --- Use the RSLib library in the renderscript 410 + useRSLib = function (self) 411 + self._s = self._s .. 'local rslib=require("rslib");' 412 + end, 413 + 388 414 --************************************************************************************************************ 389 415 -- utilities to add to the renderscript that are not by default in game 390 416 --************************************************************************************************************
+1 -1
RenderScript.min.lua
··· 1 - RenderScript={__index={_s="",_l={},_f={},SHAPES={BEZIER=0,BOX=1,BOX_ROUNDED=2,CIRCLE=3,IMAGE=4,LINE=5,POLYGON=6,TEXT=7},ALIGN_H={LEFT=0,CENTER=1,RIGHT=2},ALIGN_V={ASCENDER=0,TOP=1,MIDDLE=2,BASELINE=3,BOTTOM=4,DESCENDER=5},createLayer=function(self)local a='_L'..#self._l+1;self._s=self._s..'local '..a..'=createLayer();'self._l[#self._l+1]=a;return#self._l end,loadFont=function(self,b,c)local d='_F'..#self._f+1;self._f[#self._f+1]=d;self._s=self._s..'local '..d..'=loadFont("'..b..'",'..c..');'end,getCursor=function(self)self._s=self._s..'local _CX,_CY=getCursor();'return'_CX','_CY'end,getResolution=function(self)self._s=self._s..'local _RX,_RY=getResolution();'return'_RX','_RY'end,addBezier=function(self,e,f,g,h,i,j,k)self._s=self._s..'addBezier('..self._l[e]..','..f..','..h..','..g..','..i..','..j..','..k..');'end,addBox=function(self,e,l,m,n,o)self._s=self._s..'addBox('..self._l[e]..','..l..','..m..','..n..','..o..');'end,addBoxRounded=function(self,e,l,m,n,o,p)self._s=self._s..'addBoxRounded('..self._l[e]..','..l..','..m..','..n..','..o..','..p..');'end,addCircle=function(self,e,l,m,p)self._s=self._s..'addCircle('..self._l[e]..','..l..','..m..','..p..');'end,addImage=function(self,e,q,l,m,n,o)self._s=self._s..'addImage('..self._l[e]..','..q..','..l..','..m..','..n..','..o..');'end,addImageSub=function(self,e,q,l,m,n,o,r,s,t,u)self._s=self._s..'addImageSub('..self._l[e]..','..q..','..l..','..m..','..n..','..o..','..r..','..s..','..t..','..u..');'end,addLine=function(self,e,f,g,h,i)self._s=self._s..'addLine('..self._l[e]..','..f..','..g..','..h..','..i..');'end,addQuad=function(self,e,f,g,h,i,j,k,v,w)self._s=self._s..'addQuad('..self._l[e]..','..f..','..g..','..h..','..i..','..j..','..k..','..v..','..w..');'end,addText=function(self,e,x,y,l,m)self._s=self._s..'addText('..self._l[e]..','..self._f[x]..','..y..','..l..','..m..');'end,addTriangle=function(self,e,f,g,h,i,j,k)self._s=self._s..'addTriangle('..self._l[e]..','..f..','..g..','..h..','..i..','..j..','..k..');'end,setBackgroundColor=function(self,p,z,A)self._s=self._s..'setBackgroundColor('..p..','..z..','..A..');'end,setDefaultFillColor=function(self,e,B,p,z,A,C)self._s=self._s..'setDefaultFillColor('..self._l[e]..','..B..','..p..','..z..','..A..','..C..');'end,setDefaultRotation=function(self,e,B,D)self._s=self._s..'setDefaultRotation('..self._l[e]..','..B..','..D..');'end,setDefaultShadow=function(self,e,B,E,p,z,A,C)self._s=self._s..'setDefaultShadow('..self._l[e]..','..B..','..E..','..p..','..z..','..A..','..C..');'end,setDefaultStrokeColor=function(self,e,B,p,z,A,C)self._s=self._s..'setDefaultStrokeColor('..self._l[e]..','..B..','..p..','..z..','..A..','..C..');'end,setDefaultStrokeWidth=function(self,e,B,F)self._s=self._s..'setDefaultStrokeWidth('..self._l[e]..','..B..','..F..');'end,setDefaultTextAlign=function(self,e,G,H)self._s=self._s..'setDefaultTextAlign('..self._l[e]..','..G..','..H..');'end,setFontSize=function(x,c)self._s=self._s..'setFontSize('..self._f[x]..','..c..');'end,setLayerClipRect=function(self,e,l,m,n,o)self._s=self._s..'setLayerClipRect('..self._l[e]..','..l..','..m..','..n..','..o..');'end,setLayerOrigin=function(self,e,l,m)self._s=self._s..'setLayerOrigin('..self._l[e]..','..l..','..m..');'end,setLayerRotation=function(self,e,D)self._s=self._s..'setLayerRotation('..self._l[e]..','..D..');'end,setLayerScale=function(self,e,n,o)self._s=self._s..'setLayerScale('..self._l[e]..','..n..','..o..');'end,setLayerTranslation=function(self,e,I,J)self._s=self._s..'setLayerTranslation('..self._l[e]..','..I..','..J..');'end,setNextFillColor=function(self,e,p,z,A,C)self._s=self._s..'setNextFillColor('..self._l[e]..','..p..','..z..','..A..','..C..');'end,setNextRotation=function(self,e,D)self._s=self._s..'setNextRotation('..self._l[e]..','..D..');'end,setNextRotationDegrees=function(self,e,D)self._s=self._s..'setNextRotationDegrees('..self._l[e]..','..D..');'end,setNextShadow=function(self,e,E,p,z,A,C)self._s=self._s..'setNextShadow('..self._l[e]..','..E..','..p..','..z..','..A..','..C..');'end,setNextStrokeColor=function(self,e,p,z,A,C)self._s=self._s..'setNextStrokeColor('..self._l[e]..','..p..','..z..','..A..','..C..');'end,setNextStrokeWidth=function(self,e,F)self._s=self._s..'setNextStrokeWidth('..self._l[e]..','..F..');'end,setNextTextAlign=function(self,e,G,H)self._s=self._s..'setNextTextAlign('..self._l[e]..','..G..','..H..');'end,insertCodeLine=function(self,K)self._s=self._s..K..'\n'end,getMaxSize=function(self)return 50000 end,isTooLong=function(self)return#self._s>50000 end,sendToScreen=function(self,L)L.setRenderScript(self._s)end},__tostring=function(self)return self._s end,__len=function(self)return#self._s end} 1 + RenderScript={__index={_s="",_l={},_f={},SHAPES={BEZIER=0,BOX=1,BOX_ROUNDED=2,CIRCLE=3,IMAGE=4,LINE=5,POLYGON=6,TEXT=7},ALIGN_H={LEFT=0,CENTER=1,RIGHT=2},ALIGN_V={ASCENDER=0,TOP=1,MIDDLE=2,BASELINE=3,BOTTOM=4,DESCENDER=5},createLayer=function(self)local a='_L'..#self._l+1;self._s=self._s..'local '..a..'=createLayer();'self._l[#self._l+1]=a;return#self._l end,loadFont=function(self,b,c)local d='_F'..#self._f+1;self._f[#self._f+1]=d;self._s=self._s..'local '..d..'=loadFont("'..b..'",'..c..');'end,getCursor=function(self)self._s=self._s..'local _CX,_CY=getCursor();'return'_CX','_CY'end,getResolution=function(self)self._s=self._s..'local _RX,_RY=getResolution();'return'_RX','_RY'end,addBezier=function(self,e,f,g,h,i,j,k)self._s=self._s..'addBezier('..self._l[e]..','..f..','..h..','..g..','..i..','..j..','..k..');'end,addBox=function(self,e,l,m,n,o)self._s=self._s..'addBox('..self._l[e]..','..l..','..m..','..n..','..o..');'end,addBoxRounded=function(self,e,l,m,n,o,p)self._s=self._s..'addBoxRounded('..self._l[e]..','..l..','..m..','..n..','..o..','..p..');'end,addCircle=function(self,e,l,m,p)self._s=self._s..'addCircle('..self._l[e]..','..l..','..m..','..p..');'end,addImage=function(self,e,q,l,m,n,o)self._s=self._s..'addImage('..self._l[e]..','..q..','..l..','..m..','..n..','..o..');'end,addImageSub=function(self,e,q,l,m,n,o,r,s,t,u)self._s=self._s..'addImageSub('..self._l[e]..','..q..','..l..','..m..','..n..','..o..','..r..','..s..','..t..','..u..');'end,addLine=function(self,e,f,g,h,i)self._s=self._s..'addLine('..self._l[e]..','..f..','..g..','..h..','..i..');'end,addQuad=function(self,e,f,g,h,i,j,k,v,w)self._s=self._s..'addQuad('..self._l[e]..','..f..','..g..','..h..','..i..','..j..','..k..','..v..','..w..');'end,addText=function(self,e,x,y,l,m)self._s=self._s..'addText('..self._l[e]..','..self._f[x]..','..y..','..l..','..m..');'end,addTriangle=function(self,e,f,g,h,i,j,k)self._s=self._s..'addTriangle('..self._l[e]..','..f..','..g..','..h..','..i..','..j..','..k..');'end,setBackgroundColor=function(self,p,z,A)self._s=self._s..'setBackgroundColor('..p..','..z..','..A..');'end,setDefaultFillColor=function(self,e,B,p,z,A,C)self._s=self._s..'setDefaultFillColor('..self._l[e]..','..B..','..p..','..z..','..A..','..C..');'end,setDefaultRotation=function(self,e,B,D)self._s=self._s..'setDefaultRotation('..self._l[e]..','..B..','..D..');'end,setDefaultShadow=function(self,e,B,E,p,z,A,C)self._s=self._s..'setDefaultShadow('..self._l[e]..','..B..','..E..','..p..','..z..','..A..','..C..');'end,setDefaultStrokeColor=function(self,e,B,p,z,A,C)self._s=self._s..'setDefaultStrokeColor('..self._l[e]..','..B..','..p..','..z..','..A..','..C..');'end,setDefaultStrokeWidth=function(self,e,B,F)self._s=self._s..'setDefaultStrokeWidth('..self._l[e]..','..B..','..F..');'end,setDefaultTextAlign=function(self,e,G,H)self._s=self._s..'setDefaultTextAlign('..self._l[e]..','..G..','..H..');'end,setFontSize=function(x,c)self._s=self._s..'setFontSize('..self._f[x]..','..c..');'end,setLayerClipRect=function(self,e,l,m,n,o)self._s=self._s..'setLayerClipRect('..self._l[e]..','..l..','..m..','..n..','..o..');'end,setLayerOrigin=function(self,e,l,m)self._s=self._s..'setLayerOrigin('..self._l[e]..','..l..','..m..');'end,setLayerRotation=function(self,e,D)self._s=self._s..'setLayerRotation('..self._l[e]..','..D..');'end,setLayerScale=function(self,e,n,o)self._s=self._s..'setLayerScale('..self._l[e]..','..n..','..o..');'end,setLayerTranslation=function(self,e,I,J)self._s=self._s..'setLayerTranslation('..self._l[e]..','..I..','..J..');'end,setNextFillColor=function(self,e,p,z,A,C)self._s=self._s..'setNextFillColor('..self._l[e]..','..p..','..z..','..A..','..C..');'end,setNextRotation=function(self,e,D)self._s=self._s..'setNextRotation('..self._l[e]..','..D..');'end,setNextRotationDegrees=function(self,e,D)self._s=self._s..'setNextRotationDegrees('..self._l[e]..','..D..');'end,setNextShadow=function(self,e,E,p,z,A,C)self._s=self._s..'setNextShadow('..self._l[e]..','..E..','..p..','..z..','..A..','..C..');'end,setNextStrokeColor=function(self,e,p,z,A,C)self._s=self._s..'setNextStrokeColor('..self._l[e]..','..p..','..z..','..A..','..C..');'end,setNextStrokeWidth=function(self,e,F)self._s=self._s..'setNextStrokeWidth('..self._l[e]..','..F..');'end,setNextTextAlign=function(self,e,G,H)self._s=self._s..'setNextTextAlign('..self._l[e]..','..G..','..H..');'end,insertCodeLine=function(self,K)self._s=self._s..K..'\n'end,use=function(self,L)self._s=self._s..'local '..L..'=require("'..L..'");'end,useAtlas=function(self)self._s=self._s..'local atlas=require("atlas");'end,useJSON=function(self)self._s=self._s..'local json=require("dkjson");'end,useRSLib=function(self)self._s=self._s..'local rslib=require("rslib");'end,getMaxSize=function(self)return 50000 end,isTooLong=function(self)return#self._s>50000 end,sendToScreen=function(self,M)M.setRenderScript(self._s)end},__tostring=function(self)return self._s end,__len=function(self)return#self._s end}