[SFML 2] System przedmiotów i ekwipunku
Ostatnio zmodyfikowano 2015-10-02 11:05
notabigthreat |
» 2015-09-20 17:59:38 Zgadzam się z @UP, lecz nakłaniam, by w domyślnej implementacji - gdzie to możliwe - zwracać wartość, która nic nie zmieni. class Item { public: virtual int getHpBonus() const { return 0; } virtual int getManaBonus() const { return 0; } virtual Xyz getXyzBonus() const { return ; } virtual void onPickup( Player & owner ) const { } virtual bool activate( Player & owner ) { return true; } };
class Foo : public Item { public: int getHpBonus() const override { return 30; } };
class Mana_potion : public Item { int mana; public: int getManaBonus() const override { return bonus; } bool activate( Player & owner ) override { owner->replenishMana( mana ); return false; } }; @EDIT: Zamiast pobierania osobno wzmocnienia tego czy tamtego możliwe jest: class Item { public: virtual void applyPassiveEffects( Player & target ) const = 0; };
|
|
qest43 Temat założony przez niniejszego użytkownika |
» 2015-09-29 20:42:12 Stworzyłem klasę Item, i od niej będą dziedziczyć inne przedmioty, teraz zrobiłem klasę Potion, i w konstruktorze podaje się co będzie dodawać, np. HP - 20, Mana - 40.
Jeszcze nie mam pomysłu na stworzenie ekwipunku, wszystko wychodzi mi strasznie zawile. Potrzebuję pól ekwipunku, do tego pola ekwipunku z ubranymi przedmiotami, możliwość przenoszenia przedmiotów między sloty itd. Macie jakieś pomysły. |
|
DejaVu |
» 2015-10-01 14:16:57 przeciez masz juz opisane rozwiazanie... |
|
Acarin1995 |
» 2015-10-02 11:05:43 Pewnie mu chodzi o tablice, albo kontener obiektów w którym mógłby trzymać obiekty z różnych klas dziedziczone z klasy nadrzędnej item. Do tego powinien stworzyć klase zarządzającą ekwipunkiem, w której zadeklarował by Vectora ( choć jak chcę zrobić ekwipunek ala wow/ czy margonem powinien użyć czegoś innego ) O to ci chodzi? |
|
1 2 « 3 » |