Úkol 3 - ProjektyOA/bojova_arena GitHub Wiki

Úkol 3 - procvičení dědičnost, polymorfismus

Vytvořte novou postavu do hry - Šermíř, který je speciálním typem Válečníka.

  • Tato postava má novou vlastnost Brnění, které dokáže pohlcovat poškození (při každém útoku dokáže pohltit x % až y % přicházejícího útoku).
  • Brnění má životnost, tzn. po určitém počtu útoků se zničí.

  • Promyslete další vlastnosti a schopnosti této třídy

  • základní metoda: int vratModifUtok(int skutUtok) - vrátí hodnotu poškození po absorpci

  • Útočí stejně jako Válečník

Upravte výpis informací v GUI

  • Chceme, aby se o každém bojovníkovi zobrazovala informace o jeho postavě (zdravi / maxZdravi, co je zač, kolik má many, šípů, atd.)

  • překryjte metodu toString()

  • Informace musí být samozřejmě k dané postavě, tzn. u Mága například nepotřebujeme zobrazovat zbytečné informace (např. kolik má šípů)

  • Využijte vhodně polymorfismu pro nahrazení nepěkného příkazu jLabel4.setText(bojovnik1.getJmeno() + bojovnik1.getAktZdravi() + "/" + bojovnik1.getMaxZdravi()); příkazem jLabel4.setText(bojovnik1);

Co tedy udělat?

Vytvořte třídu Brnění (zařaďte ji do balíčku vybaveni). Promyslete, jaké vlastnosti a schopnosti potřebujete.

Vytvořte Šermíře, nastavte mu Brnění

Upravte metodu branSe(), kde budete reagovat na přicházející útok

Vyzkoušejte nového bojovníka v aréně (můžete si upravit u metody utoc() hlášení, aby se k němu připojila informace o proběhlé obraně protivníka)

Upravte výpis v GUI