Files
dsrc/sku.0/sys.server/compiled/game/script/item/slicing/salvage_kit.script
T
2013-09-10 23:17:15 -07:00

96 lines
2.4 KiB
Plaintext

include library.utils;
const string_id SID_SALVAGE = new string_id("slicing/slicing", "salvage");
//------------------------------------------------
// OnObjectMenuRequest
//------------------------------------------------
trigger OnObjectMenuRequest( obj_id player, menu_info mi )
{
// Make sure we are in the player's inventory.
obj_id inventory = getObjectInSlot( player, "inventory" );
if ( !utils.isNestedWithin( self, player ) )
{
return SCRIPT_CONTINUE;
}
mi.addRootMenu( menu_info_types.SERVER_MENU1, SID_SALVAGE );
return SCRIPT_CONTINUE;
}
//------------------------------------------------
// OnObjectMenuSelect
//------------------------------------------------
trigger OnObjectMenuSelect( obj_id player, int item )
{
// Make sure we're in the players inventory.
obj_id inventory = getObjectInSlot( player, "inventory" );
if ( !utils.isNestedWithin( self, player ) )
{
return SCRIPT_CONTINUE;
}
// Item was used.
if ( item == menu_info_types.SERVER_MENU1 )
{
// Give the player a random treat.
string new_obj = "";
if ( hasObjVar( self, "slicing.weapon_kit" ) )
{
int roll = rand(1,10000);
if ( roll == 1 )
{
new_obj = "object/tangible/smuggler/delicate_trigger_assembly.iff";
}
else if ( roll > 1 && roll < 8000 )
{
new_obj = "object/tangible/smuggler/simple_toolkit.iff";
}
else if ( roll >= 8000 && roll < 9900 )
{
new_obj = "object/tangible/smuggler/finely_crafted_toolset.iff";
}
else
{
new_obj = "object/tangible/smuggler/illegal_core_booster.iff";
}
}
else if ( hasObjVar( self, "slicing.armor_kit" ) )
{
int roll = rand(1,10000);
if ( roll == 1 )
{
new_obj = "object/tangible/smuggler/mandalorian_interframe.iff";
}
else if ( roll > 1 && roll < 7000 )
{
new_obj = "object/tangible/smuggler/simple_toolkit.iff";
}
else if ( roll >= 7000 && roll < 8000 )
{
new_obj = "object/tangible/smuggler/shock_absorbent_padding.iff";
}
else if ( roll >= 8000 && roll < 9000 )
{
new_obj = "object/tangible/smuggler/powered_motivators.iff";
}
else if ( roll >= 9000 && roll < 9500 )
{
new_obj = "object/tangible/smuggler/reactive_micro_plating.iff";
}
else
{
new_obj = "object/tangible/smuggler/trandoshan_interframe.iff";
}
}
createObject( new_obj, inventory, "" );
destroyObject( self );
}
return SCRIPT_CONTINUE;
}