Anyway I think it a good way but somehow don't understand
from
https://forums.alliedmods.net/showthread.php?t=163322
Team semiclip 3.0, crashes my server.
PHP Code:
int g_iWantedPlayers[ MAX_PHYSENTS ];
int g_iWantedCount;
void FN_PM_Move( struct playermove_s *ppmove, qboolean server )
{
if( !ppmove -> spectator )
{
g_iWantedCount = 0;
for( int i = 0; i < ppmove -> numphysent; i++ )
if( g_fn_GetPlayerTeamID( ppmove -> player_index + 1 ) != g_fn_GetPlayerTeamID( ppmove -> physents[ i ].info ) )
g_iWantedPlayers[ g_iWantedCount++ ] = i;
for( int i = 0; i < g_iWantedCount; i++ )
if( i != g_iWantedPlayers[ i ] )
ppmove -> physents[ i ] = ppmove -> physents[ g_iWantedPlayers[ i ] ];
ppmove -> numphysent = g_iWantedCount;
}
RETURN_META( MRES_IGNORED );
}
I don't know what ppmove -> physents[ i ] contains so I have no idea what to do with it
May I covert that module into Orpheu version just like:
PHP Code:
public PM_Move( const OrpheuStruct:ppmove, const server ){
g_iPMLastPlayer = OrpheuGetParamStructMember( 1, "player_index" ) + 1;
if(OrpheuGetParamStructMember( 1, "deadflag" ) == DEAD_NO)
{
........................
}
}
and add a feature to let player go through doors?