Struct ThrownItem { 
      char  th_type;     /* 0: Empty  1: Item / 2: Spell */
      char  th_unknown;   
      short int th_mov;  /* Fixed value==> Firedspell = 1 => 
                            1: only changed subsquare, not square */
      short int th_pos;  /* Position in Maze (Square-No) */
      char  th_subsquare;
      char  th_dir;      /* Direction the thrown thing flies */                         
      short int th_spno  /* Number of item if item / else number of spell */ 
      char  th_kind;     /* Type of spell; _thspelldesc+3 */
      char  th_spcaster; /* Number of party member which casted the spell
                            -1: Spell called by monster, fired by launcher */
      char  th_flags;    /* _thspelldesc+2 ; Item: 0 */
      char  th_dist;     /* Maximum movement distance: Items: 12; Spells: 126 */    
      int   th_proc;     /* -> Pointer on Spell-Proc, called on hit */
};