Skip to content

CharaterClass expects a Set of Item/Skills instead of an Array or List #2775

@Flamtky

Description

@Flamtky

Durch #2771 haben wir jetzt eine equals Methode für Items.
Dadurch können wir nicht mehr 2 gleiche Items als Start-Items definieren für unsere Klassen, wir sollte am besten den Set Parameter ersetzten durch ein Array oder eine Liste.

  HUNTER(
      "character/knight",
      Vector2.of(4, 4),
      3f,
      35,
      Set.of(
          new BowSkill(SkillTools::cursorPositionAsPoint),
          new DashSkill(5, 180, 120, new Tuple<>(Resource.STAMINA, 20)),
          new MeleeAttackSkill(3, DamageType.PHYSICAL, 500, Vector2.ZERO, Vector2.ONE)),
      Set.of(
          new ItemWoodenBow(),
          new ItemWoodenArrow(ItemWoodenArrow.MAX_ARROW_STACK_SIZE),
          new ItemWoodenArrow(ItemWoodenArrow.MAX_ARROW_STACK_SIZE),  // <-- Fehler, da nicht mehr einzigartige Items im Set
          new ItemWoodenArrow(ItemWoodenArrow.MAX_ARROW_STACK_SIZE)),  // <-- Fehler, da nicht mehr einzigartige Items im Set
      10,
      0,
      0,
      120,
      5),

Da wir schon vorher wissen wie viele Items wir haben wollen als Start-Items würde sich Arrays gut eignen:

  HUNTER(
      "character/knight",
      Vector2.of(4, 4),
      3f,
      35,
      Set.of(
          new BowSkill(SkillTools::cursorPositionAsPoint),
          new DashSkill(5, 180, 120, new Tuple<>(Resource.STAMINA, 20)),
          new MeleeAttackSkill(3, DamageType.PHYSICAL, 500, Vector2.ZERO, Vector2.ONE)),
      new Item[] {
        new ItemWoodenBow(),
        new ItemWoodenArrow(ItemWoodenArrow.MAX_ARROW_STACK_SIZE),
        new ItemWoodenArrow(ItemWoodenArrow.MAX_ARROW_STACK_SIZE),
        new ItemWoodenArrow(ItemWoodenArrow.MAX_ARROW_STACK_SIZE)
      },
      10,
      0,
      0,
      120,
      5),

Metadata

Metadata

Assignees

Labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions