getItemStrProperty( "name", name.c_str() ) else getItemIntProperty( "id", id() ) else getItemStrProperty( "name", name.c_str() ) else getItemStrProperty( "name2", name2.c_str() ) else getItemIntProperty( "color", color ) else getItemIntProperty( "amount", amount ) else getItemIntProperty( "amount2", amount2 ) else getItemIntProperty( "serial", serial ) else getItemIntProperty( "x", pos.x ) else getItemIntProperty( "y", pos.y ) else getItemIntProperty( "z", pos.z ) else getItemIntProperty( "plane", pos.plane ) else getItemIntProperty( "layer", layer ) else getItemIntProperty( "itemhand", itmhand ) else getItemIntProperty( "type", type ) else getItemIntProperty( "type2", type2 )
getStrProperty( "name", Item->name.c_str() ) else getIntProperty( "id", Item->id() ) else getStrProperty( "name", Item->name.c_str() ) else getStrProperty( "name2", Item->name2.c_str() ) else getIntProperty( "color", Item->color ) else getIntProperty( "amount", Item->amount ) else getIntProperty( "amount2", Item->amount2 ) else getIntProperty( "serial", Item->serial ) else getIntProperty( "x", Item->pos.x ) else getIntProperty( "y", Item->pos.y ) else getIntProperty( "z", Item->pos.z ) else getIntProperty( "plane", Item->pos.plane ) else getIntProperty( "layer", Item->layer ) else getIntProperty( "itemhand", Item->itmhand ) else getIntProperty( "type", Item->type ) else getIntProperty( "type2", Item->type2 )
PyObject *Py_WPItemGetAttr( Py_WPItem *self, char *name ){	getItemStrProperty( "name", name.c_str() )	else getItemIntProperty( "id", id() )	else getItemStrProperty( "name", name.c_str() )	else getItemStrProperty( "name2", name2.c_str() )	else getItemIntProperty( "color", color )	else getItemIntProperty( "amount", amount )	else getItemIntProperty( "amount2", amount2 )	else getItemIntProperty( "serial", serial )	else getItemIntProperty( "x", pos.x )	else getItemIntProperty( "y", pos.y )	else getItemIntProperty( "z", pos.z )	else getItemIntProperty( "plane", pos.plane )	else getItemIntProperty( "layer", layer )	else getItemIntProperty( "itemhand", itmhand )	else getItemIntProperty( "type", type )	else getItemIntProperty( "type2", type2 )		// What we're contained in	else if( !strcmp( "container", name ) )	{		if( self->Item->contserial == 0xFFFFFFFF )			return Py_None;		else if( isCharSerial( self->Item->contserial ) )			return PyGetCharObject( FindCharBySerial( self->Item->contserial ) );		else 			return PyGetItemObject( FindItemBySerial( self->Item->contserial ) ); 	}	// What we contain	else if( !strcmp( "content", name ) )	{		Py_WPContent *returnVal = PyObject_New( Py_WPContent, &Py_WPContentType );		returnVal->Item = self->Item; // Never forget that		return (PyObject*)returnVal;	}	else getItemIntProperty( "oldx", oldpos.x )	else getItemIntProperty( "oldy", oldpos.y )	else getItemIntProperty( "oldz", oldpos.z )	else getItemIntProperty( "oldplane", oldpos.plane )	else getItemIntProperty( "oldlayer", oldlayer )	else getItemIntProperty( "weight", weight )	else getItemIntProperty( "more1", more1 )	else getItemIntProperty( "more2", more2 )	else getItemIntProperty( "more3", more3 )	else getItemIntProperty( "more4", more4 )	else getItemIntProperty( "moreb1", moreb1 )	else getItemIntProperty( "moreb2", moreb2 )	else getItemIntProperty( "moreb3", moreb3 )	else getItemIntProperty( "moreb4", moreb4 )	else getItemIntProperty( "morex", morex )	else getItemIntProperty( "morey", morey )	else getItemIntProperty( "morez", morez )	else getItemIntProperty( "doordir", doordir )	else getItemIntProperty( "dooropen", dooropen )	// PILEABLE	else getItemIntProperty( "dye", dye )	else getItemIntProperty( "corpse", corpse )	else getItemIntProperty( "defense", def )	else getItemIntProperty( "lodamage", lodamage )	else getItemIntProperty( "hidamage", hidamage )	else getItemIntProperty( "weaponskill", wpsk )	else getItemIntProperty( "health", hp )	else getItemIntProperty( "maxhealth", maxhp )	else getItemIntProperty( "strength", st )	else getItemIntProperty( "dexterity", dx )	else getItemIntProperty( "intelligence", in )	else getItemIntProperty( "strength2", st2 )	else getItemIntProperty( "dexterity2", dx2 )	else getItemIntProperty( "intelligence2", in2 )	else getItemIntProperty( "speed", spd )	else getItemIntProperty( "smelt", smelt )	else getItemIntProperty( "secureIt", secureIt )	else getItemIntProperty( "moveable", magic )	else getItemIntProperty( "gatetime", gatetime )	else getItemIntProperty( "gatenumber", gatenumber )	else getItemIntProperty( "decaytime", decaytime )	// ownserial	else getItemIntProperty( "visible", visible )	// spanserial	else getItemIntProperty( "dir", dir ) // lightsource type	else getItemIntProperty( "priv", priv ) 	else getItemIntProperty( "value", value ) 	else getItemIntProperty( "restock", restock )	else getItemIntProperty( "value", value ) 	else getItemIntProperty( "disabled", disabled )	else getItemStrProperty( "disabledmsg", disabledmsg.c_str() ) 	else getItemIntProperty( "poisoned", poisoned ) 	else getItemStrProperty( "murderer", murderer.c_str() ) 	else getItemIntProperty( "murdertime", murdertime ) 	else getItemIntProperty( "rank", rank ) 	else getItemStrProperty( "creator", creator.c_str() ) 	else getItemIntProperty( "good", good ) 	else getItemIntProperty( "madewith", madewith ) 	else getItemStrProperty( "desc", desc.c_str() ) 	else getItemIntProperty( "carve", carve ) 	else getItemIntProperty( "spawnregion", spawnregion )	// If no property is found search for a method	return Py_FindMethod( Py_WPItemMethods, (PyObject*)self, name );}