//argument0 - The database format index


//Key data
if(argument0 == 1)
{
iv_keyactions(real(global.iv_itemtable[global.iv_sely,global.iv_selx]));
}

//Friend data
if(argument0 == 2)
{

tempint = string_pos("|",global.iv_itemtable[global.iv_sely,global.iv_selx]);
tempint2 = real(string_copy(global.iv_itemtable[global.iv_sely,global.iv_selx],0,tempint-1));

if(tempint2 == 99)
{

global.iv_actions[0,0] = 1;

global.iv_actions[1,0] = "Add Friend...";
global.iv_actions[2,0] = "Prepare the friend request command.";
global.iv_actions[3,0] = 
"{
keyboard_string = '`add Name';
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
}";

}
else
{

global.iv_actions[0,0] = 4;

global.iv_actions[1,0] = "Whisper...";
global.iv_actions[2,0] = "Prepare the whisper command for " + global.iv_selicon;
global.iv_actions[3,0] = 
"{
keyboard_string = '" + global.iv_selicon +
"~';
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
}";
global.iv_actions[1,1] = "Join";
global.iv_actions[2,1] = "Request to join " + global.iv_selicon;
global.iv_actions[3,1] = 
"{
keyboard_string = '`join " + global.iv_selicon + 
"';
keyboard_key_press(vk_enter);
keyboard_key_release(vk_enter);
iv_quit();
}";
global.iv_actions[1,2] = "Summon";
global.iv_actions[2,2] = "Request to summon " + global.iv_selicon;
global.iv_actions[3,2] = 
"{
keyboard_string = '`summon " + global.iv_selicon + 
"';
keyboard_key_press(vk_enter);
keyboard_key_release(vk_enter);
iv_quit();
}";
global.iv_actions[1,3] = "Delete Data";
global.iv_actions[2,3] = "Remove " + global.iv_selicon + "'s friend data";
global.iv_actions[3,3] = 
"{
tempint = iv_collapse(2," + string(iv_itemsearch(2,string(tempint2)+"|"+global.iv_selicon)) +
");
caddline('The friend data of " + global.iv_selicon + " has been deleted from the inventory.',global.c_server);
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
if(tempint == 1 && global.iv_selx > 0) global.iv_selx -= 1;
else if(tempint == 1 && global.iv_sely > 0) global.iv_sely -= 1;
else if(tempint == 2)
{
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
}
iv_formattable(iv_tabcol2db());
}";

}

}
//Link data
else if(argument0 == 3)
{
                              //vvv The current selected data string vvv
if(iv_zonesearch(iv_ldatainfo(global.iv_itemtable[global.iv_sely,global.iv_selx],3)) > 0)
{
global.iv_actions[0,0] = 3;
deloffset = 1;
}
else
{
global.iv_actions[0,0] = 2;
deloffset = 0;
}
//Can't delete zone data.
if(iv_ldatainfo(global.iv_itemtable[global.iv_sely,global.iv_selx],0)) global.iv_actions[0,0] -= 1;

global.iv_actions[1,0] = "Teleport";
global.iv_actions[2,0] = "Transport instantly to " + global.iv_selicon;
global.iv_actions[3,0] = 
"{
if(iv_zonesearch(iv_ldatainfo(global.iv_curdata,3)) > 0 && (iv_zonesearch(global.zone) > 0 || global.zone == 3 || server.gportal)
   && (iv_itemsearch(1,'2') || server.gportal) && global.zone != 4 && global.duopid == -1)
{

global.jid = 100;
global.p_room[100] = zone_room(iv_ldatainfo(global.iv_curdata,3));
global.p_area[100] = iv_ldatainfo(global.iv_curdata,2);
if(!iv_ldatainfo(global.iv_curdata,0))
{
global.p_x[100] = iv_ldatainfo(global.iv_curdata,4);
global.p_y[100] = iv_ldatainfo(global.iv_curdata,5);
caddline('Transferring to ' + zone_name(iv_ldatainfo(global.iv_curdata,3)) + ': '
         + iv_ldatainfo(global.iv_curdata,2) + '...',global.c_server);
}
else
{
global.p_x[100] = -1;
caddline('Transferring to ' + zone_name(iv_ldatainfo(global.iv_curdata,3)) + '...',global.c_server);
}
server.sprite_index = TeleOut;
iv_quit();

}
else if(global.duopid != -1)
{
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
caddline('Unable to use link data while in a duo.',global.c_server);
}
else if(iv_itemsearch(1,'2') <= 0 && !server.gportal)
{
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
caddline('Without a navi expansion, you are unable to remotely teleport. You must be at a central area portal or a link point to use link data.',global.c_server);
}
else if(iv_zonesearch(global.zone) <= 0 && global.zone != 3 && (!server.gportal || global.zone == 4))
{
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
caddline('Without the main link data of this zone, navis are unable to remotely teleport to or from here.',global.c_server);
}
else
{
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
caddline('Without the main link data of ' + zone_name(iv_ldatainfo(global.iv_curdata,3)) + ', navis are unable to remotely teleport to or from there.',global.c_server);
}
}";
if(iv_linksearch(iv_ldatainfo(global.iv_itemtable[global.iv_sely,global.iv_selx],1)) != global.homedata)
{
global.iv_actions[1,1] = "Set As Home";
global.iv_actions[2,1] = "Store " + global.iv_selicon + " as the home location";
global.iv_actions[3,1] = 
"{
global.homedata = iv_itemsearch(3,global.iv_curdata);
save_settings();
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
caddline('The home location has been set to ' + iv_ldatainfo(global.iv_curdata,2) + '.',global.c_server);
}";
}
else
{
global.iv_actions[1,1] = "Reset Home";
global.iv_actions[2,1] = "Reset the home location from " + global.iv_selicon + " to the Online Command Screen.";
global.iv_actions[3,1] = 
"{
global.homedata = -1;
save_settings();
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
caddline('The home location has been reset to the Online Command Screen.',global.c_server);
}";
}
global.iv_actions[1,1+deloffset] = "Delete Data";
global.iv_actions[2,1+deloffset] = "Remove the " + global.iv_selicon + " link data";
global.iv_actions[3,1+deloffset] = 
"{
tempint2 = " + string(iv_linksearch(global.iv_selicon)) + "
tempint = iv_collapse(3," + string(iv_linksearch(global.iv_selicon)) +
");
if(global.homedata == tempint2) global.homedata = -1;
caddline('The link data to " + global.iv_selicon + " has been deleted from the inventory.',global.c_server);
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
if(tempint == 1 && global.iv_selx > 0) global.iv_selx -= 1;
else if(tempint == 1 && global.iv_sely > 0) global.iv_sely -= 1;
else if(tempint == 2)
{
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
}
iv_formattable(iv_tabcol2db());
}";

}
//Message data
else if(argument0 == 4)
{

global.iv_actions[0,0] = 3;

global.iv_actions[1,0] = "View";
global.iv_actions[2,0] = "Show this message data and its details";
global.iv_actions[3,0] = 
"{
dynamicaddline('MESSAGE DATA',global.c_whisper);
dynamicaddline('------------');
dynamicaddline('Title: ' + iv_mdatainfo(global.iv_curdata,0),global.c_whisper);
dynamicaddline('Author: ' + iv_mdatainfo(global.iv_curdata,1),global.c_whisper);
dynamicaddline('Date Last Modified: ' + iv_mdatainfo(global.iv_curdata,2) + '  Time Last Modified: ' + iv_mdatainfo(global.iv_curdata,3),global.c_whisper);
dynamicaddline('Message: ',global.c_whisper);
dynamicaddline(iv_mdatainfo(global.iv_curdata,4),global.c_whisper);
dynamicaddline('------------',global.c_whisper);
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
}";
global.iv_actions[1,1] = "Edit";
global.iv_actions[2,1] = "Edit this message data";
global.iv_actions[3,1] = 
"{
if(iv_mdatainfo(global.iv_curdata,1) != global.playername)
{
dynamicaddline('You can not edit message data that was created by someone else.',global.c_server);
}
else
{
dynamicaddline('When this is in, you will now be editing the message.',global.c_server);
}
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
}";
global.iv_actions[1,2] = "Delete Data";
global.iv_actions[2,2] = "Delete this message data item";
global.iv_actions[3,2] = 
"{
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
}";

}
//Spectrum Data
else if(argument0 == 5)
{

global.iv_actions[0,0] = 0;

global.iv_actions[1,0] = "View";
global.iv_actions[2,0] = "It'll show automatically";
global.iv_actions[3,0] =
"{
keyboard_key_press(vk_insert);
keyboard_key_release(vk_insert);
}";

}