59 integer TEXTURE_SIZE = 512;
60 integer FONT_SIZE = (TEXTURE_SIZE /
ROWS) / 5;
64 drawList = osSetPenSize(drawList, 1);
65 drawList = osSetFontSize(drawList, FONT_SIZE);
67 drawList = osMovePen(drawList, 0, 0);
68 drawList = osSetPenColor(drawList,
"Gray");
69 drawList = osDrawFilledRectangle(drawList, TEXTURE_SIZE, TEXTURE_SIZE);
79 for (y = 0; y <
ROWS; y++)
82 integer CELL_HEIGHT = TEXTURE_SIZE / (
ROWS + 8);
83 integer CELL_WIDTH = TEXTURE_SIZE /
COLUMNS;
86 integer xTopLeft = x * CELL_WIDTH;
87 integer yTopLeft = y * CELL_HEIGHT;
89 drawList = osSetPenColor(drawList,
"White");
90 drawList = osMovePen(drawList, xTopLeft, yTopLeft);
91 drawList = osDrawRectangle(drawList, CELL_WIDTH, CELL_HEIGHT);
93 integer index = (y + x *
ROWS);
98 string cellBbackground;
101 cellBbackground =
"DarkGray";
111 cellBbackground =
"CadetBlue";
118 cellBbackground =
"IndianRed";
124 drawList = osSetPenColor(drawList, cellBbackground);
125 drawList = osMovePen(drawList, xTopLeft + 2, yTopLeft + 2);
126 drawList = osDrawFilledRectangle(drawList, CELL_WIDTH - 3, CELL_HEIGHT - 3);
131 drawList = osSetPenColor(drawList,
"Black");
132 drawList = osMovePen(drawList, xTopLeft + 3, yTopLeft + 3);
133 drawList = osDrawImage(drawList, 16,16, Logo);
136 drawList = osMovePen(drawList, xTopLeft + 20, yTopLeft - 1);
137 drawList = osDrawText(drawList, cellName);
142 osSetDynamicTextureDataBlendFace(
"",
"vector", drawList,
"alpha:false,width:" + (
string)TEXTURE_SIZE +
",height:" + (
string)TEXTURE_SIZE, FALSE, 1, 0, 255,
DISPLAY_SIDE);
177 http_response(key Dummy, integer Status, list Meta,
string Body)
235 http_response(key Dummy, integer Status, list Meta,
string Body)
239 llSetText(
".", <1, 0, 0>, 1);
258 llSetText(
"", <1, 0, 0>, 1);
267 if (
LastUnix + 3600 * 4 < llGetUnixTime())
279 touch_start(integer Dummy)
281 vector point = llDetectedTouchST(0);
282 integer face = llDetectedTouchFace(0);
283 integer link = llDetectedLinkNumber(0);
287 if (point == TOUCH_INVALID_TEXCOORD)
293 integer y = (
ROWS - 1) - llFloor(point.y *
ROWS);
294 integer x = llFloor(point.x *
COLUMNS);
295 integer index = (y + x *
ROWS);
302 key
id = llDetectedKey(0);
303 string info =
"Dummy Information";
308 llDialog(llDetectedKey(0),
"This link is invalid.", [
"Ok"], -5);