Jump to content

Search the Community

Showing results for tags 'game-dev'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Development
    • HTML Coding
    • JavaScript
    • PHP
    • CMS
    • Database
    • Web Server
    • Web-site Development
    • Internet Marketing, SEO
  • Library
    • Tricks and solutions
    • Books
  • Commercial services
    • Freelance
    • Job
    • Goods and Services
  • Our Forum
    • Flame
    • Contests
    • Feedback and Ideas

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Web site


Telegram


Signal


Viber


Skype


From


Interests

Found 1 result

  1. Помогите пожалуйста разобраться в вопросе организации кода в простейшей игре. и в результате скажите: 1. правильный первый вариант 2. правильный второй вариант 3. оба варианта правильные и используются в зависимости от ситуации 4. давно уже существует паттерн %patternname% и с успехом используется в такой ситуации Допустим есть 2D-ландшафт, над ним летит корабль игрока. Корабль может стрелять ракетами. Описываю первый вариант организации ООП-кода на js(в js контроллер и представление совмещены): инициализация игры начинается с создания spaceView, который в свою очередь инициализирует: ландшафт, корабль игрока PlayerShipView - корабль игрока. Он может стрельнуть ракетой(PlayerRocketView). То есть объект корабля связан с объектом ракеты Ракета может столкнуться с ландшафтом. То есть объект ракеты связан с объектом spaceView В результате: Имеем 3 связанных объекта, но каждый из них содержит только свою функциональность(это плюс). Но если в программе придётся что-нибудь менять(например отключить кораблю игрока возможность стрелять ракетами), то вносить правки придётся в разных местах программы(это минус). Есть несколько глобальных переменных(это минус) Описываю второй вариант организации ООП-кода на js(в js контроллер и представление совмещены): инициализация игры начинается с создания spaceView, который в свою очередь инициализирует: ландшафт, корабль игрока, ракеты(есть нажата кнопка "огонь") и вообще все остальные объекты Таким образом: Если например игрок нажимает "огонь", то инициализация ракеты происходит в spaceView, а PlayerShipView вообще ничего не знает об объекте ракеты(это плюс). Соответственно нет глобальных переменных(это плюс). Но в spaceView содержится куча логики(всей игры, в котрой кроме корабля игрока и ракеты существует очень много других объектов). Для наглядности я реализовал первый вариант здесь: https://github.com/zlodiak/space-1 В нём используются различные библиотечки типа backbone, underscore, но незнание их не мешает пониманию общей структуры программы Не бейте(ногами), я знаю что вопрос для телепатов
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy