indexing description: "[ This abstract class represents objects that are actions. See SHOW_SCNENE, SHOW_CLOSEUP, HIDE_CLOSEUP, PICKUP, REMOVE and CHANGE_SETTING This class is part of the XAE Extended Adventure Engine Project. ]" author: "Adrian Rabenseifner, radrian@student.ethz.ch" date: "$Date$" revision: "$Revision$" deferred class ACTION inherit CONDITIONED feature -- Access context_item: ITEM -- only used by engine perform(e: EVENT; g: GAME) is -- used by engine to perform action on a GAME object deferred end performable(context: CONTEXT): BOOLEAN is -- check performability local item_check: boolean c: BOOLEAN do -- action is performable if -- > conditions hold -- > context_item is corect item_check := ((context_item = context.context_item) or (context_item = void)) --print (" item check: " + item_check.out + "%N") c := check_conditions(context) --print (" conditions: " + c.out + "%N") Result := c and item_check -- debug output -- io.put_string("performability check: ") -- io.put_boolean(Result) -- io.put_new_line end set_context_item(item: ITEM) is -- set context item do context_item := item end end -- class ACTION