[E.O 2.0] - Npc Objeto (v1.1) : Carregar Hitskin_logo Hitskin.com

Isto é uma pré-visualização de um tema em Hitskin.com
Instalar o temaVoltar para a ficha do tema

Aldeia RPG
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

[E.O 2.0] - Npc Objeto (v1.1) : Carregar

Ir para baixo

[E.O 2.0] - Npc Objeto (v1.1) : Carregar Empty [E.O 2.0] - Npc Objeto (v1.1) : Carregar

Mensagem por Kotol Qua Dez 01, 2021 5:02 am

Bem, na versão 1.0, foi criado um tipo de npc como 'objeto', e conseguimos empurrar/chutar o npc. Agora, iremos 'Carregar' o npc. 

Funções 1.1: 
- Carregar o npc com a tecla: Shift; 
- Deixar o npc-objeto com a tecla: Shift;
- Objetos segurados, não podem ser chutados/empurrados;
- Colocar o npc-objeto em outro npc-objeto, destrói o objeto;
- Objetos não podem ser colocados fora do mapa, carregados entre mapas, ou pegos quando já foram pegos, evitando erros críticos; 
- Se tiver carregando o objeto: quit, morte, mudança de mapa = limpa o npc-objeto.

Como é 1.1, requer o sistema(clique para ir):  [E.O 2.0] - Npc Objeto (v1.0)

Vamos lá que é bem rapidinho, primeiramente abra seu 'client.vbp' , e em "ModTypes" , em "Private Type PlayerRec" , declare um TIPO, descendo, antes do primeiro "End Type" , declare isso:

Spoiler:

Ainda em "ModTypes", em "Private Type MapNpcRec" , declare um TIPO, descendo, antes do primeiro "End Type" , declare isso: 

Spoiler:

Agora, em "ModGameLogic" , na "Function CheckDirection" , procure por isso: 


Spoiler:

E substitua isto por isso: 



Spoiler:

Ainda em "ModGameLogic" , no final adicione isso: 


Spoiler:

Ainda em "ModGameLogic", na "Sub CheckMovement()" , procure por isso: 


Spoiler:

E substitua isto, por isso: 


Spoiler:

Agora, em "MoGlobals", procure por: 


Spoiler:

E abaixo disto, adicione isso: 

Spoiler:

Agora, em "ModInput", na "Public Sub CheckKeys()", procure por: 


Spoiler:

E abaixo distto, adicione isso: 


Spoiler:

Aina em "ModInput", na "Public Sub CheckInputKeys()" , procure por:


Spoiler:


E substitua por isso: 


Spoiler:




Agora, no final de "ModDirectDraw7" , adicione isso:


Spoiler:



Ainda em "ModDirectdraw7" , na "Public Sub Render_Graphics" procure por isso:


Spoiler:



E substitua isto por isso: 

Spoiler:



Ainda em "ModDirectdraw7" , na "Public Sub Render_Graphics" procure por isso:


Spoiler:


E substitua isto por isso:


Spoiler:



Agora, em "ModHandleData" , na "Public Sub InitMessages()" , procure por isso: 


Spoiler:


E acima disto, adicione isso: 


Spoiler:

Ainda em "ModHandleData" , na "Private Sub HandleMapNpcData" , procure por: 


Spoiler:


E acima disto, adicione isso: 

Spoiler:


Ainda em "ModHandleData" , no final adicione isso: 


Spoiler:


Agora, em "ModEnumerations" , procure por isso: 

Spoiler:


E acima disto, adicione isso: 

Spoiler:

Ainda em "ModEnumerations" , procure por isso: 

Spoiler:

E acima disto, adicione isso: 

Spoiler:

Agora, em "ModText" , na "Public Sub DrawNpcName(ByVal Index As Long)" , procure por isso: 

Spoiler:

E abaixo disto, adicione isso: 


Spoiler:


E a parte do cliente foi finalizada. Agora vamos ao ~Server Side~
Primeiramente, abra seu server.vbp.

Agora em "ModTypes" , em "Private Type TempPlayerRec" , declare um TIPO, descendo, antes do primeiro "End Type" , declare isso:

Spoiler:

Ainda em "ModTypes", em "Private Type MapNpcRec" , declare um TIPO, descendo, antes do primeiro "End Type" , declare isso: 

Spoiler:

Agora, em "ModEnumerations" , procure por isso: 

Spoiler:

E acima disto, adicione isso: 

Spoiler:

Ainda em "ModEnumerations" , procure por isso: 

Spoiler:

E acima disto, adicione isso: 

Spoiler:

Agora, em "ModPlayer" , na "Sub JoinGame" , procure por: 


Spoiler:

E abaixo disto, adicione isso: 


Spoiler:


Ainda em "ModPlayer" , mais abaixo na "Sub LeftGame" , procure por:


Spoiler:


E abaixo disto, adicione isso:


Spoiler:


Ainda em "ModPlayer" , mais abaixo na "Sub PlayerWarp" , procure por:


Spoiler:


E abaixo disto, adicione isso:



Spoiler:

Ainda em "ModPlayer" , mais abaixo na "Sub PlayerMove" , procure por:


Spoiler:

E abaixo disto, adicione isso:


Spoiler:

Ainda em "ModPlayer" , na "Sub PlayerMove" , procure por:


Spoiler:


E abaixo disto, adicione isso:


Spoiler:


Ainda em "ModPlayer", na "Sub OnDeath" , procure por: 


Spoiler:

E abaixo disto, adicione isso: 

Spoiler:


Agora, finalmente para o "ModPlayer" , adicione no final isso: 


Spoiler:

Agora, na "Public Sub InitMessages()",  mais abaixo, antes o primeiro "End Sub" , adicione isso: 

Spoiler:


Ainda em "ModHandleData" , na "Sub HandleRequestNewMap" , procure por: 

Spoiler:

E abaixo disto, adicione isso: 


Spoiler:


Ainda em "ModHandleData" , na "Sub HandleQuit" , procure por: 

Spoiler:

E acima disto, adicione isso:

Spoiler:

Agora, no final do "ModHanleData", aicione isso: 


Spoiler:

Agora, em "ModServerTCP" , na "Sub CloseSocket" , procure por: 


Spoiler:

E abaixo disto, adicione isso: 


Spoiler:

Ainda em "ModServerTCP" , na "Sub SendMapNpcsTo" , procure por: 



Spoiler:


E acima disto, adicione isso: 


Spoiler:

Ainda em "ModServerTCP" , na "Sub SendMapNpcsToMap" , procure por: 

Spoiler:


E acima disto, adicione isso:


Spoiler:


E finalmente, no final de "ModServerTCP" , adicione isso: 


Spoiler:

Por fim, em "ModCombat" na "Public Function CanPlayerAttackNpc", procure por: 


Spoiler:


E substitua por isso: 


Spoiler:

E pronto, agora você tem npc-objeto podendo ser carregado!  Razz
Qualquer BUG ou dúvida, entre em contato! 

~Créditos~
Kotol
Kotol
Kotol
Moderador Local
Moderador Local

Mensagens : 77
Créditos : 17

Valentine e WillMaiaBR gostam desta mensagem

Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos