NukeBoards

Pomoc - [Ogólne] Zapisywanie stanu "zebrania" obiektu

Kyogi - 04-02-2018, 16:27
: Temat postu: [Ogólne] Zapisywanie stanu "zebrania" obiektu
W mojej grze odpoczywamy co jakiś czas co reloaduje mapę (dzięki czemu potwory się respawnują) ale za to respawnują się także itemy które umieszczam na mapie, czego nie chcę.

Zastanawiam się jak mogę zapisać prosto w mojej grze czy przedmiot na ziemi był zebrany
i zrobić to tak, abym nie musiał dopisywać kodu przy każdym nowym dodanym na mapę obiekcie

daję przykład zapisywania i wczytywania, abyście mieli podgląd na czym pracuję...

Spoiler (C#):


Chcę zaznaczyć że nie mam zamiaru korzystać z Serializacji bo pod to musiałbym edytować całą klasę gracza (tzn. od razu pisać pod serializację i zapis)
jarlfenrir - 04-02-2018, 17:05
:
Na szybko pomysł:
Zrób kopię pliku z mapą, i na tym pliku wprowadzaj zmiany, tzn. jak gracz coś podniesie, to usuń z mapy na zawsze.
Przy wczytywaniu musisz potem tylko sprawdzić, czy gracz chce zacząć nową grę, czy kontynuować poprzednią i zależnie od tego wczytać oryginał lub kopię.
Kyogi - 04-02-2018, 17:06
:
W unity nie jest możliwe edytowanie obiektów na innej scenie będąc na jednej
msg - 04-02-2018, 18:25
:
Źródło: Greg Lukosek - Learning C# by Developing Games with Unity 5.x
Rozdział o klasach i dziedziczeniu: https://www.dropbox.com/s...zenie1.pdf?dl=1
Krótko mówiąc: MUSISZ dopisać kod do każdego nowego obiektu. Czy zrobisz to tradycyjnie, jako odziedziczenie zachowań opisanych w klasie nadrzędnej czy dodając "skrypt" czy tam "behavior" do nowo powstałego obiektu - twoja sprawa. Nie jest to duży wysiłek - w zasadzie znikomy.


A teraz do faktycznego przechowywania danych po restarcie poziomu.

Źródło: Alan Thorn - Unity 5.x By Example
Rozdział, gdzie do gry przygodowej dodano system questów z trzema stanami zmiennych publicznych: https://www.dropbox.com/s...uesty1.pdf?dl=1

Źródło: Matt Smith - Unity 5.x Cookbook
Zapisywanie mapy - proponuję zamieścić tam informację o znajdźkach i aktualizować ją po zebraniu: https://www.dropbox.com/s...ysave2.pdf?dl=1
Miałem stąd wydrukować jeszcze info o używaniu Resource files, ale uznałem za zbędne.