/** * Copyright (c)2000-2002 Sony Online Entertainment Inc. * All Rights Reserved * * Title: uber_survey_tool.script * Description: script for GM survey tool testing * @author $Author:$ * @version $Revision:$ */ /***** INCLUDES ********************************************************/ include library.resource; include library.sui; /***** CONSTANTS *******************************************************/ const string HANDLER_SET_TOOL_CLASS = "handleSetToolClass"; const string_id SID_TOOL_OPTIONS = new string_id("sui", "tool_options"); const string_id SID_TOOL_CLASS = new string_id("sui", "survey_class"); /***** TRIGGERS ********************************************************/ trigger OnInitialize() { setName(self,"Uber Survey Tool"); return SCRIPT_CONTINUE; } trigger OnObjectMenuRequest(obj_id player, menu_info mi) { int mnuOptions = -1; menu_info_data mid = mi.getMenuItemByType(menu_info_types.SERVER_ITEM_OPTIONS); if ( mid == null ) { mnuOptions = mi.addRootMenu(menu_info_types.SERVER_ITEM_OPTIONS, SID_TOOL_OPTIONS); } else { mnuOptions = mid.getId(); } if ( mnuOptions > 0 ) { int subClass = mi.addSubMenu(mnuOptions, menu_info_types.SERVER_SURVEY_TOOL_CLASS, SID_TOOL_CLASS); } return SCRIPT_CONTINUE; } trigger OnObjectMenuSelect(obj_id player, int item) { if ( item == menu_info_types.SERVER_SURVEY_TOOL_CLASS ) { sui.listbox(self, player, "Select a class to set your survey tool to...", resource.CLASS_NAME, HANDLER_SET_TOOL_CLASS); } return SCRIPT_CONTINUE; } trigger OnRequestCoreSample(obj_id player, string resource_type) { removeObjVar(player, resource.VAR_SAMPLE_STAMP); return SCRIPT_CONTINUE; } /***** FUNCTIONS ********************************************************/ /***** MESSAGEHANDLERS **************************************************/ messageHandler handleSetToolClass() { obj_id player = params.getObjId("player"); int selRow = sui.getListboxSelectedRow(params); switch (selRow) { case -1: return SCRIPT_CONTINUE; default: if ( (player != null) && (player != obj_id.NULL_ID) ) { if ( !resource.setToolClass(self, selRow) ) { sendSystemMessageTestingOnly(player, "Uber Survey Tool: class set FAILED"); } else { sendSystemMessageTestingOnly(player, "Uber Survey Tool: class set -> " + resource.CLASS_NAME[selRow]); } } break; } return SCRIPT_CONTINUE; }