/** * Copyright (c)2000-2002 Sony Online Entertainment Inc. * All Rights Reserved * * Title: dropoff.script * Description: script to be attached to all data items * @author $Author:$ * @version $Revision:$ */ /***** INCLUDES ********************************************************/ include library.loot; /***** INHERITS ********************************************************/ inherits item.container.add_only; /***** CONSTANTS *******************************************************/ const string_id SID_DATA_ONLY = new string_id("error_message","data_only"); /***** TRIGGERS ********************************************************/ trigger OnAboutToReceiveItem(obj_id srcContainer, obj_id transferer, obj_id item) { if ( isPlayer(transferer) ) { if ( !loot.isFactionalDataItem(item) ) { sendSystemMessage(transferer, SID_DATA_ONLY); return SCRIPT_OVERRIDE; } } return SCRIPT_CONTINUE; } trigger OnReceivedItem(obj_id srcContainer, obj_id transferer, obj_id item) { if ( isPlayer(transferer) ) { if ( loot.isFactionalDataItem(item) ) { if ( !loot.redeemFactionCoupon(getContainedBy(self), transferer, item) ) { debugSpeakMsg(transferer, "redeem failed: returning coupon to source container!"); putIn(item, srcContainer); } return SCRIPT_CONTINUE; } } return SCRIPT_CONTINUE; } trigger OnClosedContainer(obj_id who) { obj_id[] contents = getContents(self); if ( (contents == null) || (contents.length == 0) ) { } else { for ( int i = 0; i < contents.length; i++ ) { destroyObject(contents[i]); } } return SCRIPT_CONTINUE; } /***** FUNCTIONS *******************************************************/ /***** MESSAGEHANDLERS *************************************************/