                         基本物件 (Standard Objects)
                        =============================
                           档案: /std/object/ob.c

I. 继承物件 (Inherited Objects)

  None.

II. 性质 (Properties)

  "id" - Array of String, 物件的英文识别字。

  "name" - String, 物件的英文名字, 一律透过 set_name() 设定。

  "c_name" - String, 物件的中文名字, 一律透过 set_name() 设定。

  "short" - String, 物件的英文简称, 一律透过 set_short() 设定。

  "c_short" - String, 物件的中文简称, 一律透过 set_short() 设定。

  "long" - String, 物件的英文叙述, 一律透过 set_long() 设定。

  "c_long" - String, 物件的中文叙述, 一律透过 set_long() 设定。
  
  "weight" - Int, 物件的重量, 单位是「百公克」, 即 weight = 1 的物件重
             一百公克。

  "light" - Int, 物件是否会发光, 0 表示不会, 1 表示会。

  "max_load" - Int, 物件的最大载重量, 单位和物件的重量(weight)相同。

  "load" - Int, 物件的目前载重量, 单位和物件的重量(weight)相同。

III. 附加函数 (Applied Functions)

  int id( string str ) - 
    若 str 为此物件的识别字之一, 传回 1, 否则传回 0。

  int move( mixed dest ) -
    将此物件「移动」至 dest 的 inventory 中, dest 可为物件或物件的档名
    字串, 移动之前会呼叫此物件目前所在环境的 release_object() 与 dest
    的 receive_object() 做检查, 并且执行重量系统(weight, load, max_load
    )检查。

  int remove() -
    将此物件从世界上「除掉」, 此物件所拥有的 inventory 会被移到此物件的
    环境中。

  int clean_up()
    当一个物件很久没有被使用者使用到, driver 会呼叫此一函数试图去将它释
    放掉。

  int receive_object( object obj ) -
  int release_object( object obj ) -
  int check_light() -
  varargs void set_name( string name, c_name ) -
  varargs void set_short( string name, c_name ) -
  varargs void set_long( string name, c_name ) -
  void set_weight( int weight ) -