Jump to content

[C++]Remover Colisiones


Recommended Posts

Buenas, comunidad.

Hoy os voy a enseñar como quitar algunas colisiones de los montruos, npc's, mascotas y personajes.

Vamos a la siguiente ruta del SOURCE CLIENT:

Binary\Source\GameLib


Abrimos el siguiente archivo:

ActorInstanceCollisionDetection


Dentro de él buscamos lo siguiente:

BOOL CActorInstance::TestActorCollision(CActorInstance & rVictim)


Y deberemos colocar los siguientes códigos según nuestras necesidades:

#Anular Colisiones de Monturas

#ifdef REMOVE_HORSE_COLLISION
	if (rVictim.GetRace() >= 20101 && rVictim.GetRace() <= 20109)
		return false;
#endif


#Anular Colisiones en Zonas Seguras

#ifdef REMOVE_SAFEZONE_COLLISION
	if (IsInSafeZone(rVictim))
		return false;
#endif


#Anular Colisiones a las Tiendas

#ifdef REMOVE_SHOP_COLLISION
	// Shop NPC
	if (rVictim.GetRace() == 30000)
		return false;
	else if (30002 <= rVictim.GetRace() && rVictim.GetRace() <= 30008)
		return false;
#endif


#Anular Colisiones a los Personajes

#ifdef ENABLE_PLAYERS_WITHOUT_COLLISIONS
    if (0 <= rVictim.GetRace() && rVictim.GetRace() <= 8)
        return FALSE;
#endif


#Anular Colisiones a las Tiendas

#ifdef ENABLE_NPC_WITHOUT_COLLISIONS
    if (rVictim.IsNPC())
        return false;
#endif



No olvidéis de definirlo en la siguiente ruta:

Binary\Source\UserInterface


En el archivo:

Locale_inc


c827e2e2c47423ac6402bb49fab31573.gif
2a31234b8c671dc9182d3314993094bb.gif

No olvidéis de dar un me gusta 😉


Agradecimientos:

@Jes
@Jfirewall 

Link to comment
Share on other sites

En 6/4/2023 a las 8:11, Anthony&#x27;s dijo:

Buenas, comunidad.

Hoy os voy a enseñar como quitar algunas colisiones de los montruos, npc's, mascotas y personajes.

Vamos a la siguiente ruta del SOURCE CLIENT:

Binary\Source\GameLib


Abrimos el siguiente archivo:

ActorInstanceCollisionDetection


Dentro de él buscamos lo siguiente:

BOOL CActorInstance::TestActorCollision(CActorInstance & rVictim)


Y deberemos colocar los siguientes códigos según nuestras necesidades:

#Anular Colisiones de Monturas

#ifdef REMOVE_HORSE_COLLISION
	if (rVictim.GetRace() >= 20101 && rVictim.GetRace() <= 20109)
		return false;
#endif


#Anular Colisiones en Zonas Seguras

#ifdef REMOVE_SAFEZONE_COLLISION
	if (IsInSafeZone(rVictim))
		return false;
#endif


#Anular Colisiones a las Tiendas

#ifdef REMOVE_SHOP_COLLISION
	// Shop NPC
	if (rVictim.GetRace() == 30000)
		return false;
	else if (30002 <= rVictim.GetRace() && rVictim.GetRace() <= 30008)
		return false;
#endif


#Anular Colisiones a los Personajes

#ifdef ENABLE_PLAYERS_WITHOUT_COLLISIONS
    if (0 <= rVictim.GetRace() && rVictim.GetRace() <= 8)
        return FALSE;
#endif


#Anular Colisiones a las Tiendas

#ifdef ENABLE_NPC_WITHOUT_COLLISIONS
    if (rVictim.IsNPC())
        return false;
#endif



No olvidéis de definirlo en la siguiente ruta:

Binary\Source\UserInterface


En el archivo:

Locale_inc



No olvidéis de dar un me gusta 😉


Agradecimientos:

@Jes
@Jfirewall 

disculpa Jes volvio aparecer despues de tanto tiempo

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...