Baza danych mysql jest ?atwiejsza, ni? zapis do plik?w, proponuj? od tego zacz??. Sam system dom?w to tylko tablica, musisz w niej przechowywa? informacje o pozycji wej?cia do niego, w?a?ciciela domu, pozycji wyj?cia z tego domu. Zapis i wczytanie to b?ahostka.
Tablic? oczywi?cie robimy enumeratorem, je?li bierzesz si? za taki system, to powiniene? jak?? wiedz? na ich temat posiada?. Tam alokuj pami?? dot. w?a?ciciela, pozycji drzwi wej?ciowych i ich interioru oraz virtual worldu, tak samo z wyj?ciowymi. Do tego czy dom jest zamkni?ty, czy te? nie.
Indeksem tablicy niech b?dzie jednocze?nie unikalne ID domu, u?yj do tego definicji, bo b?dzie to wygodne przy p?tlach.
Spawn gracza gdy ma domek - naj?atwiej by?oby zrobi?, aby gracz wybra? sobie spawn (zmienna np. "spawnplace") w kt?rej przechowasz UID domku, w kt?rym gracz chcia?by si? spawnowa?. Przy spawnie sprawdzaj, czy to na pewno jego dom, a potem po prostu ustawiaj pozycj? w danym miejscu.
Wchodzenie i wychodzenie z dom?w to p?tla przez ca?? tablic? z instrukcj? warunkow? sprawdzaj?ca, czy dom jest otwarty, a dopiero potem czy gracz jest blisko drzwi wej?ciowych/wyj?ciowych (b?dzie ciut optymalniej). Jak jest, no to niech wchodzi/wychodzi.
Do systemu dom?w najsprawniej jest mie? w?asny system postaci, aby si? dobrze orientowa? z ustalaniem spawnu i tak dalej.
|