CODE
integer total = 0;
integer page = 1;
integer maxpages = 1;
default {
state_entry() {
total = llGetInventoryNumber(INVENTORY_TEXTURE);
page = 1;
maxpages = llCeil(total / 25.0);
llWhisper(0, (string)total + " sculpt maps loaded.");
if (total > 0) {
integer x = 1;
integer count = ((page - 1) * 25);
for (x = 1; x <= 25; x++)
{
if ((count - 1 + x) <= total) {
llMessageLinked(x+1, x, "", llGetInventoryKey(llGetInventoryName(INVENTORY_TEXTURE, (count + x - 1))));
} else {
llMessageLinked(x+1, x, "", NULL_KEY);
}
}
}
}
link_message(integer sender_num, integer num, string str, key id) {
integer newpage = page;
if (str == "next") {
if (page < (maxpages - 1)) {page++;}
} else if (str == "prev") {
if (page > 0) {page--;}
}
if (newpage != page) {
integer x = 1;
integer count = (page * 25);
for (x = 1; x <= 25; x++)
{
if ((count + x) <= total) {
llMessageLinked(x+1, 0, "", llGetInventoryKey(llGetInventoryName(INVENTORY_TEXTURE, (count + x - 1))));
} else {
llMessageLinked(x+1, 0, "", NULL_KEY);
}
}
}
}
changed(integer param) {
if (CHANGED_INVENTORY & param) {
if(llGetInventoryNumber(INVENTORY_TEXTURE) != total) {
llResetScript();
}
}
}
on_rez(integer params)
{
llResetScript();
}
}