mirror of
https://github.com/SWG-Source/dsrc.git
synced 2026-07-31 00:15:54 -04:00
69 lines
1.6 KiB
Plaintext
69 lines
1.6 KiB
Plaintext
include library.hue;
|
|
include library.utils;
|
|
include library.beast_lib;
|
|
include library.static_item;
|
|
include library.sui;
|
|
|
|
/***** CONSTANTS ****************************************************/
|
|
|
|
const string_id SID_DYE_BEAST = new string_id("beast", "menu_dye");
|
|
|
|
/***** TRIGGERS *****************************************************/
|
|
|
|
trigger OnObjectMenuRequest(obj_id player, menu_info mi)
|
|
{
|
|
if(!utils.isNestedWithin(self, player))
|
|
return SCRIPT_CONTINUE;
|
|
|
|
int management_root = mi.addRootMenu (menu_info_types.ITEM_USE, SID_DYE_BEAST);
|
|
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
trigger OnObjectMenuSelect(obj_id player, int item)
|
|
{
|
|
if(!utils.isNestedWithin(self, player))
|
|
return SCRIPT_CONTINUE;
|
|
|
|
if(item == menu_info_types.ITEM_USE)
|
|
{
|
|
obj_id beast = beast_lib.getBeastOnPlayer(player);
|
|
|
|
if(!isIdValid(beast))
|
|
{
|
|
sendSystemMessage(player, beast_lib.SID_NO_BEAST);
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
if(isDead(beast))
|
|
{
|
|
sendSystemMessage(player, new string_id("beast", "beast_cant_when_dead"));
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
|
|
ranged_int_custom_var[] palColors = hue.getPalcolorVars(beast);
|
|
|
|
if(palColors == null || palColors.length == 0)
|
|
{
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
string [] palettes = {"", "", "", ""};
|
|
|
|
for(int i = 0; i < palColors.length; i++)
|
|
{
|
|
ranged_int_custom_var ri = palColors[i];
|
|
string customizationVar = ri.getVarName();
|
|
|
|
if(customizationVar.startsWith("/"))
|
|
palettes[i] = customizationVar;
|
|
}
|
|
|
|
utils.setScriptVar(beast, "beast.tool_oid", self);
|
|
|
|
openCustomizationWindow(player, beast, palettes[0], -1, -1, palettes[1], -1, -1, palettes[2], -1, -1, palettes[3], -1, -1);
|
|
}
|
|
|
|
return SCRIPT_CONTINUE;
|
|
} |