Aller au contenu
Top-Metin2.org - Vous êtes à la recherche d'un serveur Metin 2 ? ×
×
×
  • Créer...

C++ - Afficher les Metins sur la Minimap


Messages recommandés

  • Robot

Centre de Téléchargement

Hidden Content

    Give reaction to this post to see the hidden content.
( Interne )

Ce tutoriel aura pour but d'afficher les Metins sur vos minimaps ! 

 

Pré-requis :

  • Les sources Metin2

 

I. Partie Sources

Révélation

 

A. Fichier InstanceBase.h

Révélation

Cherchez le code suivant :

			NAMECOLOR_WAYPOINT,

Ajoutez ceci en dessous :

			NAMECOLOR_METIN,

 

 

B. Fichier PythonCharacterManagerModule.cpp

Révélation

Cherchez le code suivant :

	PyModule_AddIntConstant(poModule, "NAMECOLOR_MOB", CInstanceBase::NAMECOLOR_NORMAL_MOB);

Ajoutez ceci en dessous :

	PyModule_AddIntConstant(poModule, "NAMECOLOR_METIN", CInstanceBase::NAMECOLOR_METIN);

 

 

C. Fichier InstanceBaseEffect.cpp

Révélation

Cherchez le code suivant :

	else if (IsPoly())
{
	return NAMECOLOR_MOB;
}

Ajoutez ceci en dessous :

	else if (IsStone())
{
	return NAMECOLOR_METIN;
}

 

 

D. Fichier PythonMiniMap.h

Révélation

Cherchez le code suivant :

		TInstanceMarkPositionVector		m_WarpPositionVector;

Ajoutez ceci en dessous :

		TInstanceMarkPositionVector		m_MetinPositionVector;

 

 

E. Fichier PythonMiniMap.cpp

Révélation

Cherchez le code suivant :

	m_NPCPositionVector.clear();

Ajoutez ceci en dessous :

	m_MetinPositionVector.clear();

 

 

Cherchez le code suivant :

		else if (pkInstEach->IsNPC())
	{
		aMarkPosition.m_fX = ( m_fWidth - (float)m_WhiteMark.GetWidth() ) / 2.0f + fDistanceFromCenterX + m_fScreenX;
		aMarkPosition.m_fY = ( m_fHeight - (float)m_WhiteMark.GetHeight() ) / 2.0f + fDistanceFromCenterY + m_fScreenY;

		m_NPCPositionVector.push_back(aMarkPosition);
	}

Ajoutez ceci en dessous :

else if (pkInstEach->IsStone())
	{
		aMarkPosition.m_fX = (m_fWidth - (float)m_WhiteMark.GetWidth()) / 2.0f + fDistanceFromCenterX + m_fScreenX;
		aMarkPosition.m_fY = (m_fHeight - (float)m_WhiteMark.GetHeight()) / 2.0f + fDistanceFromCenterY + m_fScreenY;

		m_MetinPositionVector.push_back(aMarkPosition);
	}

 

 

Et enfin cherchez ce code :

	// NPC
STATEMANAGER.SetRenderState(D3DRS_TEXTUREFACTOR, CInstanceBase::GetIndexedNameColor(CInstanceBase::NAMECOLOR_NPC));
aIterator = m_NPCPositionVector.begin();
while (aIterator != m_NPCPositionVector.end())
{
	TMarkPosition & rPosition = *aIterator;
	m_WhiteMark.SetPosition(rPosition.m_fX, rPosition.m_fY);
	m_WhiteMark.Render();
	++aIterator;
}

Ajoutez ceci en dessous :

	// Metin
STATEMANAGER.SetRenderState(D3DRS_TEXTUREFACTOR, CInstanceBase::GetIndexedNameColor(CInstanceBase::NAMECOLOR_METIN));
aIterator = m_MetinPositionVector.begin();
while (aIterator != m_MetinPositionVector.end())
{
	TMarkPosition & rPosition = *aIterator;
	m_WhiteMark.SetPosition(rPosition.m_fX, rPosition.m_fY);
	m_WhiteMark.Render();
	++aIterator;
}

 

Vous pouvez désormais compiler votre launcher !

 

 

II. Partie Client (Python)

Révélation

 

Veuillez dépack votre fichier root avant d'effectuer les modifications suivantes.

 

A. Fichier colorinfo.py

Révélation

Cherchez le code suivant :

CHR_NAME_RGB_WARP = (136, 218, 241)

Ajoutez ceci en dessous :

CHR_NAME_RGB_METIN = (255, 132, 0)

 

Information  Vous pouvez modifier la couleur du point qui apparaîtra sur la Minimap en changeant les valeurs des couleurs RVB entre parenthèses. Voici un lien utile pour avoir des valeurs : Color HTML copiez uniquement les valeurs présentes dans les cases R G & B

Vous pouvez désormais sauvegarder !

 

B. Fichier introloading.py

Révélation

Cherchez le code suivant :

			chrmgr.NAMECOLOR_WARP : colorInfo.CHR_NAME_RGB_WARP,

Ajoutez ceci en dessous :

			chrmgr.NAMECOLOR_METIN : colorInfo.CHR_NAME_RGB_METIN,

Vous pouvez désormais sauvegarder & repack votre fichier root !

 

Succès ! Vous avez désormais vos Metins qui apparaissent sur vos minimaps !

 

 

 

Pour continuer :

Si vous avez un soucis, n'hésitez pas à poster votre demande d'aide dans l'A/Q/S

Source de base : Metin2dev

 

  • Metin2 Dev 7
  • Good 2
  • Love 4

french_banner.gif

Lien vers le commentaire
Partager sur d’autres sites

  • Réponses 0
  • Créé
  • Dernière réponse

Meilleurs contributeurs dans ce sujet

Jours populaires



  • brilliantdiscord_widget
  • Flux d'Activité

    1. 21

      Metin2 en 2020 peut-on en parler?

    2. 0

      METIN2Project

    3. 3

      Ressources - UnPack - Metin2 Client - Officiel

    4. 0

      Barre des tâches d'argent étendue

    5. 16

      Redémarrage automatique des channels

    6. 16

      Multi Logo GM / SGM / GA

  • En ligne récemment

    • Aucun utilisateur enregistré regarde cette page.

Information importante

Conditions d’utilisation / Politique de confidentialité / Règles / Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.