View Single Post
Author Message
SweetDickWilly
Junior Member
Join Date: Nov 2018
Location: Las Vegas, Nevada
Old 10-12-2020 , 18:32   [CSGO] Turning Thrown Grenades Into Footballs
Reply With Quote #1

I am creating a CSGO plugin and attempting to turn grenades into a ball; have the ability to be caught and picked up on the ground by all players. I already have some of the projectile logic working but can't seem to allow players the ability to touch the ball at all. Can anyone point me in the right direction? So far I have the following:

PHP Code:
public void OnEntityCreated(int entity, const char[] classname)
{
    if(
StrContains(classname"_projectile") != -1SDKHook(entitySDKHook_SpawnPostGrenade_SpawnPost);
    if(
StrContains(classname"_projectile") != -1SDKHook(entitySDKHook_StartTouch, Catch);    
}

public 
void Grenade_SpawnPost(int entity)
{
    
int client GetEntPropEnt(entityProp_Send"m_hOwnerEntity"); 
    if (
client == -1)return; // if the client's index is -1, stop
    
int iReference EntIndexToEntRef(entity); 
    
CreateTimer(0.1Timer_OnGrenadeCreatediReference);
}

public 
Action Timer_OnGrenadeCreated(Handle timerany ref)
{
  
int entity EntRefToEntIndex(ref);
  if(
entity != INVALID_ENT_REFERENCE)
  {
    
SetEntProp(entityProp_Data"m_nNextThinkTick", -1); // block grenade explosion
  
}
}

public 
void Catch (int clientint entity)
{
    if (!
IsValidEntity(entity))
        return;
    
    
PrintToChatAll("the football has hit something");    

At current, when a player throws a grenade/ball off the wall the player cannot catch the grenade; the grenade goes through the player's body. Do I need to set an ent's property or is one of my functions interfering in some way?

Last edited by SweetDickWilly; 10-15-2020 at 14:41.
SweetDickWilly is offline