The Sims™ Technical Library

Include file iff_objf.h

#ifndef __SIMS_iff_objf_h
#define __SIMS_iff_objf_h

#include <iosfwd>

class simIFF_OBJf
{
	int m_count;
	enum { m_slots = 36 };
	struct objf_fun {
		unsigned short test;
		unsigned short act;
	} m_fun[m_slots];
	simIFF_OBJf(const simIFF_OBJf&);	// no copy
	void operator=(const simIFF_OBJf&);	// no assign
public:
	simIFF_OBJf(std::istream *in);
	~simIFF_OBJf(void) {}
	bool err(void) const	{ return m_count == 0; }
	int count(void) const	{ return m_count; }
	const objf_fun &operator[](unsigned int i) const { return m_fun[i]; }
	// function indexes
	enum {	init,
		main,
		load,
		cleanup,
		queue_skipped,
		allow_intersection,
		wall_adjacency_changed,
		room_changed,
		dynamic_multi_tile_update,
		placement,
		pickup,
		user_placement,
		user_pickup,
		level_info_request,
		serving_surface,
		portal,
		gardening,
		wash_hands,
		prep,
		cook,
		surface,
		dispose,
		food,
		pick_up_from_slot,
		wash_dish,
		eating_surface,
		sit,
		stand,
		clean,
		repair,
		UI_event };
};

#endif // __SIMS_iff_objf_h

Valid XHTML 1.1! Valid CSS!
Copyright © 2001-2008 Dave Baum and Greg Noel. All rights reserved.
The Sims™ is a trademark of Maxis and Electronic Arts.
This page was last modified Friday, 19-Dec-2003 16:18:33 UTC.
Made on a Mac
SourceForge