tBane Temat założony przez niniejszego użytkownika |
» 2024-07-22 19:52:05 Pokazuje, że currentInventory jest nullptr. Ale Furniture::inventory nie jest nullptr; transferItem( currentInventory->items[ bagCursor ], currentInventory, player->bag ); if( currentInventory == nullptr ) cout << "empty";
|
|
pekfos |
» 2024-07-22 19:53:13 A co ma currentInventory do Furniture::inventory? |
|
tBane Temat założony przez niniejszego użytkownika |
» 2024-07-22 19:54:03 To, że currentInventory jest obecnie przetwarzanym Furniture::inventory |
|
pekfos |
» 2024-07-22 19:59:41 Jest osobną zmienną i została wyzerowana. Nijak się to ma do Furniture::inventory. Jak to w kodzie wygląda? |
|
tBane Temat założony przez niniejszego użytkownika |
» 2024-07-22 20:03:00 Zaraz wrzucę jeszcze na githuba. class Furniture : public GameObject { public: Texture * texture; sf::Sprite sprite; Inventory * inventory; Texture * takeItTexture; sf::Sprite takeItSprite; bool showHand; };
Inventory * currentInventory;
void setInventoryPanel( Inventory * & i ) { currentInventory = i; }
void transferItem( Item * item, Inventory * & from, Inventory * & to ) { from->removeItem( item->name ); if( from->items.size() < 1 ) { delete from; from = nullptr; } to->addItem( item ); }
transferItem( currentInventory->items[ bagCursor ], currentInventory, player->bag );
|
|
pekfos |
» 2024-07-22 20:07:53 Tracisz informację, który ekwipunek obecnie przetwarzasz. Należałoby mieć wskaźnik na wskaźnik by wyzerować oryginalny wskaźnik. Inventory * * currentInventory;
void setInventoryPanel( Inventory * & i ) { currentInventory = & i; } if( currentInventory && * currentInventory ) transferItem( currentInventory->items[ bagCursor ], * currentInventory, player->bag ); Tylko... po co? Założenie że każdy istniejący ekwipunek jest niepusty wydaje mi się nie mieć żadnego sensu. Niech łapka jest wyświetlana dla niepustych ekwipunków, a nie wszystkich. Jak wspomniano wcześniej, wygląda to jakbyś chciał sobie zrobić wyciek pamięci. Jak dla mnie pole inventory nawet nie powinno być wskaźnikiem. Niech każdy mebel może mieć w sobie przedmioty i tyle. |
|
tBane Temat założony przez niniejszego użytkownika |
» 2024-07-22 20:19:33 Dobra, teraz to się tak wysypało, że chyba cały inventoryPanel od nowa napiszę xD // edit dobra opanowałem systuację. Kiedyś ten kod będę musiał poprawić, dziś już nie mam sił i widzę wszędzie gwiazdki przed oczami xD https://github.com/tBane1995/2D-RPG.git |
|
tBane Temat założony przez niniejszego użytkownika |
» 2024-07-23 14:40:56 W sumie to masz rację, bo gdy używam wskaźników to nie mogę w prosty sposób kopiować zawartości inwentarza. Nawet o tym nie pomyślałem. |
|
1 « 2 » 3 |