/** * Continuous Thread Inherit. * @author Sandoz, 18th June 2001. * @example * * void setup() { * set_thread_colour("white"); * set_value_scale( 0.200 ); * set_medium_alias("WhiteThreadOnSpool"; * } * */ inherit "/obj/cont_medium"; string thread_colour; /** @ignore yes */ int query_thread() { return 1; } /** * This method returns the colour of the thread. * @return the colour of the thread * @see set_thread_colour */ string query_thread_colour() { return thread_colour; } /** * This method sets the colour of the thread. * @param word the colour of the thread * @see query_thread_colour */ void set_thread_colour( string word ) { thread_colour = word; } /** @ignore yes */ void create() { thread_colour = "buggy"; ::create(); set_name("thread"); add_alias("spool"); add_plural("spools"); add_adjective( ({"spool of", thread_colour }) ); set_determinate("a "); set_short("spool of "+thread_colour+" thread"); set_main_plural("spools of "+thread_colour+" thread"); set_long("This is a sturdy wooden spool, around which $amount_size$ " "of "+thread_colour+" dyed cotton thread has been wound.\n"); set_no_join(); set_weight_unit( ({ 1, 100 }) ); set_value(1000); set_amount(10); set_amount_types( ([ "turn" : ({ 1, "turns" }), "skein": ({ 8, "skeins" }), ]) ); } /* setup() */ /** @ignore yes */ string amount_size_short() { return ""; } /** @ignore yes */ mapping query_dynamic_auto_load() { mapping map; if( !query_name() || query_name() == "object") return 0; map = ([ "::" : ::query_dynamic_auto_load() ]); if( thread_colour ) map["thread colour"] = thread_colour; return map; } /* query_dynamic_auto_load() */ /** @ignore yes */ void init_dynamic_arg( mapping map ) { if( map["::"] ) ::init_dynamic_arg( map["::"] ); if( map["thread colour"] ) thread_colour = map["thread colour"]; } /* init_dynamic_arg() */ /** @ignore yes */ mapping int_query_static_auto_load() { return ([ "::" : ::int_query_static_auto_load() ]); } /* int_query_static_auto_load() */ /** @ignore yes */ mixed query_static_auto_load() { if( base_name(TO) == __FILE__[0..<3] ) return int_query_static_auto_load(); return ([ ]); } /* query_static_auto_load() */ /** @ignore yes */ void init_static_arg( mapping map ) { if( !mappingp( map ) ) return; if( map["::"] ) ::init_static_arg( map["::"] ); } /* init_static_arg() */ /** @ignore yes */ mixed stats() { return ::stats() + ({ ({ "thread colour", thread_colour }) }); } /* stats() */