Jump to content

[C++]Remover Colisiones


Mensajes recomendados

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 

Enlace para comentar
Compartir en otros sitios

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

Enlace para comentar
Compartir en otros sitios

Unirse a la conversación

Puedes publicar ahora y registrarte más tarde. Si tienes una cuenta, regístrate para publicar con su cuenta.

Guest
Responder a este tema...

×   Has pegado contenido con formato .   Eliminar formato

  Only 75 emoji are allowed.

×   Tu enlace se ha incorporado automáticamente.   Mostrar un enlace en su lugar

×   Se ha restaurado el contenido anterior. .   Borrar editor

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

  • Recientemente navegando por este tema   0 miembros

    • No hay usuarios registrados visitando esta página.
×
×
  • Crear nuevo...