Skip to content

mattthey/myteeworlds

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

MYTEEWORLDS

Структура проекта myteeworlds:

  • client

    • main.py
      TODO расписать эту поеботу тоже
  • server

    • main.py - для запуска проекта

      • создает переменную сервер
      • запускает сервер
    • server.py - контроллер для server_model.py

      • класс Server с методами:
        • init инициализация модели сервера в server_model
        • main_loop основная петля, ядро сервера
        • выделение 2 потоков для чтения данных (команды для сервера и действия игрока)
        • чтение данных с клиентов
        • выделение потока для отправки данных клиенту (реакция сервера)
        • отправка данных клиенту (реакция сервера)
    • server_model.py - хранит всю бизнес-логику сервера

      • класс Server_model с методами:
        • выделение id для игрока
        • отключение игрока от сервера
        • подключение игрока к серверу
        • выкинуть игрока в игру
        TODO исправить эти методы ИЛИ -> пойти спать <-
        • отправка клиенту его id на сервере - точнее это перекинется в server(контроллер)
        • обновить время игрока на сервере - тоже должен делать контроллер
        • удалить тех, кто неактивен больше n=15 сек
        • превратить лист таплов в байт строку для отправки клиенту
        • обработка событий от клиента (перемещение) - кто этим должен заниматься ?
    • player.py - совокупность всех игроков и методы, которые реализуют их действия(перемещения, смерть, СОН, ну может еще СОН) контроллер для player_model

      • класс Player с методами:
        • init инициализация player_model для каждого из игроков, которые появляются
        • перемещения
        • контакт с объектами - думаю это обязаность model
    • player_model.py - в идее это основные характеристики игрока, тип его координаты, скин возможно, имеющиеся у него пушки, базуки...

      • класс Player_model с методами: *
    • game_world.py - в моей идее(ну тип мой же проект, я так мыслю)

SERVER

Создаем сервер

В методе main.py создаем экземпляр класса Server из файла server.py И запускаем метод main_loop это основное ядро сервера.

Основной процесс сервера

Основной процесс сервера идет в методе main_loop, который находится в файле main.py. Для начала вы все меня заебали

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages