Ctor-based add() API, font by string, asset by string in Ctor

  • Change Node::add(args) to add(Ctor{}, args) using Ctor::T alias
  • All node Ctor structs now carry using T = NodeType for type deduction
  • Separate node-specific Ctor from positional Node3d/NodeUi::Ctor args
  • Mesh::Ctor and SkMesh::Ctor now take asset as string
  • Label::Ctor and MenuItem::Ctor now take font as string
  • FpsLabel no longer requires Font reference in constructor
  • BaseSlot::Ctor separated from Slot::Ctor with NodeUi::Ctor as arg
  • InvUi::Ctor carries Items reference instead of passing via constructor
  • All node registrators updated to use new add(Ctor{}) pattern
  • Fix TileView scroll max: use (size-1)/nCol instead of (size-nCol+1)/nCol
  • Update all slot, loot, player, mob constructors to new pattern
  • Update icon assets for equipment and weapon slots

Previous