Jump to content

Channel em que so Staff entra


Recommended Posts

Bem, não durmo há quase 2 dias por isso desculpa se isto não é propriamente a solução que tu queres.

O pensamento lógico que estou a seguir agora é de entrares num core público (vamos imaginar, o 1) e quereres ir para um core privado que só os GMs consigam ter acesso.

A forma lógica será mais ou menos isto:

  • core1 <- core privado <- core 1 <- core privado

Ou seja, sais de um core para ires para o outro e assim sucessivamente.

Para tal, é necessário que cries ou dediques um dos cores que já tens disponível para isso acontecer, depois disso terás que inserir um mapa no mesmo (MAP_INDEX no CONFIG) pois será utilizado como um ponto de partida entre os dois cores.

Pronto, a partir daí segue o tutorial:

 

Adiciona o seguinte logo na primeira linha do questlua_pc.cpp:

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

 

Procura por:

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

Adiciona em baixo:

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

 

Procura por:

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

 

Adiciona em baixo:

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

 

Adiciona no quest_function:

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

 

Agora utiliza a seguinte quest:

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

 

  • ID_INDEX -> ID do mapa que inseriste no CONFIG;
  • pc.warp(x,y) -> Coordenadas para o mapa.

 

Tudo que está comentado é só em caso de quereres levar alguém que não seja GM para esse core (para testes, etc.) desde que a pessoa saiba o código.

 

 

PS: Li de novo o teu tópico e percebi que querias era criar um canal lmao, isso é totalmente possível mas mais complexo, terias que criar uma nova dict no intrologin, assegurar que o mesmo fosse igual com o da base de dados e torna-lo eficiente, algo como isto:

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

Mas de qualquer forma, o tudo o que está feito acima também pode servir como solução.

Edited by Mário.
Link to post
Share on other sites

Bem, deixo aqui a minha solução pra isso.

Vá em game/src/input_login.cpp e pesquise por: static bool FN_is_battle_zone(LPCHARACTER ch)

Adicione abaixo:

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

Pesquise por: void CInputLogin::Login(LPDESC d, const char * data)

Adicione acima da condição: if (g_bNoMoreClient)

Hidden Content

    Give reaction or reply to this topic to see the hidden content.


Pesquise por: void CInputLogin::LoginByKey(LPDESC d, const char * data)

Adicione acima da condição: if (g_bNoMoreClient)

Hidden Content

    Give reaction or reply to this topic to see the hidden content.


Parte Cliente:

Vá em root->intrologin.py e pesquise por: "AGELIMIT"    : localeInfo.LOGIN_FAILURE_SHUTDOWN_TIME,

Adicione abaixo:

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

Agora pesquise em locale/xx/locale_game.txt por: LOGIN_PROCESSING

Adicione abaixo:

Hidden Content

    Give reaction or reply to this topic to see the hidden content.


Configurei para o channel2(g_bChannel == 2) ser exclusivo para administradores.

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

Link to post
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
×
×
  • Create New...