Jump to content
RAGE Multiplayer Community

Clientside: BrowserMp


Recommended Posts

Я пишу свой проект на TS и использую для интерфейсов VueCLI, что мне позволяет делать очень функциональные и реактивные UI. Я настроил там VueRouter для маршрутизации своих страниц. Например что бы показать планшет LSPD, я указываю следующий адрес package://cef/index.html#/faction/lspd/tablet. Если хочу показать страницу авторизации, то - package://cef/index.html#/auth/login. Как вы могли заметить, я работаю только с одним интерфейсом и одним экземпляром браузера, в котором много разных интерфейсов, для различных игровых процессов. Если я хочу показывать какие то интерфейсы, которые будут доступны из любой страницы, например чат и спидометр, то я такие компоненты размещаю в корневом компоненте Vue (App.vue).

Что я видел в на форумах и в слитых игровых проектах с исходным кодом... Там обычно все пишется всё на классическом JS без каких либо препроцессоров или фреймворков, в интерфейсах встречает библиотека JQuery, кто-то конечно использовал React, что не может, не радовать. Везде каждый интерфейс в свой папке и нет никакой маршрутизации, поскольку она там не нужна. Если по какой то логике нужно показать другой интерфейс, то в существующем браузере меняю адрес, либо же, например для чата создают отдельный экземпляр и там уже отображают чат. В последних версиях RageMp вовсе сделали для браузера функцию makeAsChat, которая позволяет подменить чат сервера на ваш.

Собственно со зависимые вопросы:

1. Правильное решение использовать несколько экземпляров BrowserMp для отображения различных интересов, в своём браузере?
2. Или может быть в действительности достаточно одного браузера, который откроет полноценный сайт с маршрутизацией по страницам и будет показывать нам чат, спидометр, меню игрок и другие вещи?

English (interpreter)

Скрытый текст

I write my project in TS and use VueCLI for interfaces, which allows me to make very functional and reactive UIs. I set up a VueRouter there to route my pages. For example, to show the LSPD tablet, I specify the following address package://cef/index. html#/faction/lspd/tablet. If I want to show the authorization page, then-package://cef/index. html#/auth/login. As you may have noticed, I only work with one interface and one browser instance, which has many different interfaces, for different game processes. If I want to show some interfaces that will be accessible from any page, such as chat and speedometer, then I place such components in the root Vue component (App.vue).

What I've seen in forums and in merged game projects with source code... There, everything is usually written in classic JS without any preprocessors or frameworks, the jQuery library meets in the interfaces, someone of course used React, which can not but please. Everywhere, each interface is in its own folder and there is no routing, since it is not needed there. If by some logic you need to show a different interface, then I change the address in the existing browser, or, for example, create a separate instance for the chat and already display the chat there. In the latest versions of RageMP, we have made a makeAsChat feature for the browser, which allows you to replace the server chat with your own.

Actually co dependent questions:

1. The correct solution is to use multiple instances BrowserMp to display different interests in your browser?
2. Or can one browser actually be enough to open a full-fledged site with page routing and show us the chat, speedometer, player menu, and other things?


Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Create New...