Apgūsti C++ klases, mantošanu un polimorfismu Godot GDExtension vidē.
Tēma noslēdzas ar RPG klases simulatora izveidi.
No C++ klases pamata līdz RPG klašu simulatora projektam.
Apgūsti C++ klases struktūru, private/public sekcijas un dalībnieku deklarācijas.
Veido klašu hierarhiju - Entity bāze ar Player, Enemy un Boss atvasinājumiem.
Iepazīsti Godot signālu sistēmu - emit_signal, connect un callable_mp C++.
Eksponē C++ mainīgos Godot inspektoram ar ADD_PROPERTY un PropertyInfo.
Veido RPG statistikas sistēmu ar struct, HP/ATK/DEF/SPD vērtībām un pieredzi.
Izveido RPG cīņas simulatoru ar C++ klašu hierarhiju, statistiku un signāliem.
Klases, mantošana, virtual, GDCLASS makro un signālu shēma.
| Koncepte | C++ / Godot sintakse |
|---|---|
| Klases deklarācija | class Foo : public Bar { GDCLASS(Foo, Bar) }; |
| virtual metode | virtual void uzbrukt(Entity* m); |
| override | void uzbrukt(Entity* m) override; |
| Signāla emitēšana | emit_signal("nosaukums", args...); |
| Signāla savienošana | connect("sig", callable_mp(obj, &T::fn)); |
| Inspektora īpašība | ADD_PROPERTY(PropertyInfo(...), "set_x", "get_x"); |
| class pret struct | class: private pēc noklusējuma; struct: public pēc noklusējuma |