itemimprovements

itemimprovements.improvement_type

<enum-type type-name="improvement_type">
  <enum-item name="ART_IMAGE"/>
  <enum-item name="COVERED"/>
  <enum-item name="RINGS_HANGING"/>
  <enum-item name="BANDS"/>
  <enum-item name="SPIKES"/>
  <enum-item name="ITEMSPECIFIC"/>
  <enum-item name="THREAD"/>
  <enum-item name="CLOTH"/>
  <enum-item name="SEWN_IMAGE"/>
  <enum-item name="PAGES"/>
  <enum-item name="ILLUSTRATION"/>
  <enum-item name="INSTRUMENT_PIECE"/>
  <enum-item name="WRITING"/>
</enum-type>

itemimprovements.dye_info

<struct-type type-name="dye_info">
  <int16_t name="mat_type" ref-target="material"
      aux-value="$$.mat_index"/>
  <int32_t name="mat_index"/>
  <int32_t name="dyer" ref-target="historical_figure"/>
  <enum base-type="int16_t" name="quality" type-name="item_quality"/>
  <enum base-type="int16_t" name="skill_rating"
      type-name="skill_rating">
    at the moment of creation
  </enum>
  <int32_t/>
</struct-type>

itemimprovements.itemimprovement

<class-type type-name="itemimprovement"
    original-name="itemimprovementst">
  <int16_t name="mat_type" ref-target="material"
      aux-value="$$.mat_index"/>
  <int32_t name="mat_index"/>
  <int32_t name="maker" ref-target="historical_figure"/>
  <int32_t name="masterpiece_event" ref-target="history_event"/>
  <enum base-type="int16_t" name="quality" type-name="item_quality"/>
  <enum base-type="int32_t" name="skill_rating"
      type-name="skill_rating">
    at the moment of creation
  </enum>
  <int32_t/>
  <virtual-methods>
    <vmethod name="getImage">
      <int32_t/>
      <ret-type>
        <pointer type-name="art_image"/>
      </ret-type>
    </vmethod>
    <vmethod name="getColorAndShape">
      <pointer name="colors">
        <stl-vector type-name="int16_t"/>
      </pointer>
      <pointer name="shapes">
        <stl-vector type-name="int16_t"/>
      </pointer>
      <pointer/>
    </vmethod>
    <vmethod name="clone">
      <ret-type>
        <pointer type-name="itemimprovement"/>
      </ret-type>
    </vmethod>
    <vmethod name="write_file">
      <pointer name="file" type-name="file_compressorst"/>
    </vmethod>
    <vmethod name="read_file">
      <pointer name="file" type-name="file_compressorst"/>
      <int32_t name="loadversion"/>
    </vmethod>
    <vmethod ret-type="improvement_type" name="getType"/>
    <vmethod ret-type="bool" name="isDecoration"/>
    <vmethod is-destructor="true"/>
    <vmethod ret-type="int32_t" name="getDyeValue">
      <pointer type-name="caravan_state" name="caravan"/>
    </vmethod>
    <vmethod name="setShape">
      <int32_t name="shape" ref-target="descriptor_shape"/>
    </vmethod>
  </virtual-methods>
</class-type>

itemimprovements.itemimprovement_art_imagest

<class-type type-name="itemimprovement_art_imagest"
    inherits-from="itemimprovement">
  <compound name="image" type-name="art_image_ref"/>
</class-type>

itemimprovements.itemimprovement_coveredst

<class-type type-name="itemimprovement_coveredst"
    inherits-from="itemimprovement">
  <bitfield name="cover_flags">
    <flag-bit name="glazed"/>
  </bitfield>
  <int32_t name="shape" ref-target="descriptor_shape"/>
</class-type>

itemimprovements.itemimprovement_rings_hangingst

<class-type type-name="itemimprovement_rings_hangingst"
    inherits-from="itemimprovement"/>

itemimprovements.itemimprovement_bandsst

<class-type type-name="itemimprovement_bandsst"
    inherits-from="itemimprovement">
  <int32_t name="shape" ref-target="descriptor_shape"/>
</class-type>

itemimprovements.itemimprovement_spikesst

<class-type type-name="itemimprovement_spikesst"
    inherits-from="itemimprovement"/>

itemimprovements.itemimprovement_specific_type

<enum-type type-name="itemimprovement_specific_type">
  <enum-item name="HANDLE"/>
  <enum-item name="ROLLERS"/>
</enum-type>

itemimprovements.itemimprovement_itemspecificst

<class-type type-name="itemimprovement_itemspecificst"
    inherits-from="itemimprovement">
  <enum base-type="int32_t" type-name="itemimprovement_specific_type"
      name="type"/>
</class-type>

itemimprovements.itemimprovement_threadst

<class-type type-name="itemimprovement_threadst"
    inherits-from="itemimprovement">
  <compound name="dye" type-name="dye_info"/>
</class-type>

itemimprovements.itemimprovement_clothst

<class-type type-name="itemimprovement_clothst"
    inherits-from="itemimprovement"/>

itemimprovements.itemimprovement_sewn_imagest

<class-type type-name="itemimprovement_sewn_imagest"
    inherits-from="itemimprovement">
  <compound name="image" type-name="art_image_ref"/>
  <compound name="cloth">
    <int32_t name="unit_id" ref-target="historical_figure"/>
    <int16_t name="quality"/>
    <int16_t/>
  </compound>
  <compound name="dye" type-name="dye_info"/>
</class-type>

itemimprovements.itemimprovement_pagesst

<class-type type-name="itemimprovement_pagesst"
    inherits-from="itemimprovement">
  <int32_t name="count"/>
  <stl-vector name="contents" type-name="int32_t"
      ref-target="written_content"/>
</class-type>

itemimprovements.itemimprovement_illustrationst

<class-type type-name="itemimprovement_illustrationst"
    inherits-from="itemimprovement">
  <compound name="image" type-name="art_image_ref"/>
  <int32_t>
    v0.34.01
  </int32_t>
</class-type>

itemimprovements.itemimprovement_instrument_piecest

<class-type type-name="itemimprovement_instrument_piecest"
    inherits-from="itemimprovement">
  <stl-string/>
</class-type>

itemimprovements.itemimprovement_writingst

<class-type type-name="itemimprovement_writingst"
    inherits-from="itemimprovement">
  <stl-vector name="contents" type-name="int32_t"
      ref-target="written_content"/>
</class-type>

itemimprovements.written_content_type

<enum-type type-name="written_content_type" base-type="int32_t">
  <enum-item name="Manual"/>
  <enum-item name="Guide"/>
  <enum-item name="Chronicle"/>
  <enum-item name="ShortStory"/>
  <enum-item name="Novel"/>
  <enum-item name="Biography"/>
  <enum-item name="Autobiography"/>
  <enum-item name="Poem"/>
  <enum-item name="Play"/>
  <enum-item name="Letter"/>
  <enum-item name="Essay"/>
  <enum-item name="Dialog"/>
  <enum-item name="MusicalComposition"/>
  <enum-item name="Choreography"/>
  <enum-item name="ComparativeBiography"/>
  <enum-item name="BiographicalDictionary"/>
  <enum-item name="Genealogy"/>
  <enum-item name="Encyclopedia"/>
  <enum-item name="CulturalHistory"/>
  <enum-item name="CulturalComparison"/>
  <enum-item name="AlternateHistory"/>
  <enum-item name="TreatiseOnTechnologicalEvolution"/>
  <enum-item name="Dictionary"/>
  <enum-item name="StarChart"/>
  <enum-item name="StarCatalogue"/>
  <enum-item name="Atlas"/>
</enum-type>

itemimprovements.written_content_style

<enum-type type-name="written_content_style" base-type="int32_t">
  <enum-item name="Meandering"/>
  <enum-item name="Cheerful"/>
  <enum-item name="Depressing"/>
  <enum-item name="Rigid"/>
  <enum-item name="Serious"/>
  <enum-item name="Disjointed"/>
  <enum-item name="Ornate"/>
  <enum-item name="Forceful"/>
  <enum-item name="Humorous"/>
  <enum-item name="Immature"/>
  <enum-item name="SelfIndulgent"/>
  <enum-item name="Touching"/>
  <enum-item name="Compassionate"/>
  <enum-item name="Vicious"/>
  <enum-item name="Concise"/>
  <enum-item name="Scornful"/>
  <enum-item name="Witty"/>
  <enum-item name="Ranting"/>
</enum-type>

itemimprovements.written_content

<struct-type type-name="written_content"
    instance-vector="$global.world.written_contents.all"
    key-field="id">
  <int32_t name="id"/>
  <stl-string name="title"/>
  <int32_t name="page_start"/>
  <int32_t name="page_end"/>
  <stl-vector name="refs" pointer-type="general_ref">
    interactions learned
  </stl-vector>
  <stl-vector name="ref_aux" type-name="int32_t">
    if nonzero, corresponding ref is ignored
  </stl-vector>
  <int32_t init-value="-1"/>
  <int32_t init-value="-1"/>
  <enum type-name="written_content_type" name="type"/>
  <int32_t name="unk_v42_1">
    v0.42.01; uninitialized but saved
  </int32_t>
  <stl-vector name="styles" type-name="written_content_style"/>
  <stl-vector name="style_strength" type-name="int32_t">
    0 = maximum, 1 = significant, 2 = partial
  </stl-vector>
  <int32_t name="author" ref-target="historical_figure"/>
  <int32_t init-value="-1"/>
</struct-type>

itemimprovements.engraving_flags

<bitfield-type type-name="engraving_flags" base-type="uint32_t">
  <flag-bit name="floor"/>
  <flag-bit name="west"/>
  <flag-bit name="east"/>
  <flag-bit name="north"/>
  <flag-bit name="south"/>
  <flag-bit name="hidden"/>
  <flag-bit name="northwest"/>
  <flag-bit name="northeast"/>
  <flag-bit name="southwest"/>
  <flag-bit name="southeast"/>
</bitfield-type>

itemimprovements.engraving

<struct-type type-name="engraving"
    instance-vector="$global.world.engravings">
  <int32_t name="artist" ref-target="historical_figure"/>
  <int32_t name="masterpiece_event" ref-target="history_event"/>
  <enum base-type="int32_t" name="skill_rating"
      type-name="skill_rating">
    at the moment of creation
  </enum>
  <compound name="pos" type-name="coord"/>
  <compound name="flags" type-name="engraving_flags"/>
  <int8_t name="tile"/>
  <int32_t name="art_id" ref-target="art_image_chunk"/>
  <int16_t name="art_subid" ref-target="art_image"
      aux-value="$$.art_id"/>
  <enum base-type="int16_t" name="quality" type-name="item_quality"/>
  <int32_t name="unk1" init-value="-1">
    v0.34.06
  </int32_t>
  <int32_t name="unk2" init-value="-1">
    v0.34.06
  </int32_t>
</struct-type>