void main() { object oPC = GetLastUsedBy(); object oArcaneBooks = GetObjectByTag("ASG_DVCHEST"); int iCount = 0; int iRandom; int iK; object oBook = GetFirstItemInInventory(oArcaneBooks); while (GetIsObjectValid(oBook)) { iCount++; oBook = GetNextItemInInventory(oArcaneBooks); } iRandom = Random(iCount); oBook = GetFirstItemInInventory(oArcaneBooks); for (iK=0;iK<=iRandom;iK++) { oBook = GetNextItemInInventory(oArcaneBooks); } object oNewBook = CopyObject(oBook,GetLocation(oPC),oPC); SetIdentified(oNewBook,TRUE); }