Skip to content

Creature_class

Schmel924 edited this page Sep 14, 2017 · 6 revisions

First diagram of this project.
It shows us that Class Creature was actually not bad-written.
Neat usage of other classes (Weapon, Armor, Skill, Attribute, Augmentation are the ones i saw immediately). It has many dependencies, and some of them may entangle too much, however they are carefully contained here and in Item folder.
Why Augmentation::get_associated_attribute is colored in red? Because i didn't find any use or implementation of this function. So, first chosen for deletion.

Obvious questions:

  1. Is it my error to think that creature depends on Item class, if it depends on Weapon and Armor? and should i exclude it from this view?
  2. Skill, Attribute, Augmentation. - They are too similar, perhaps base class is possible?
  3. Can Weapon, Armor, Clip be further generalised to Item?
  4. Usage of XML (via CMarkup Class) is in every class on this diagram (including Weapon, Armor, Clip). I didn't look into code yet, but function names suggest that they are similar. Maybe general XML Interface should exist, so we can inherit from it, without copying those functions everywhere?

Ad. Info:

Depends on:

  • Class Weapon
  • Class Armor
  • Class Clip
  • Class Skill
  • Class Attribute
  • Class Augmentation

Non-Transparently Depends on:

  • Class Item (Parent of Weapon, Armor, Clip)
  • Class CMarkup for xml

Is dependence for:

  • Class Unique_Creatures
  • presumably a lot
Clone this wiki locally