private InstantiateTracker.ThingToCheck GameResourceToThing(InstantiateTracker.GameResource gr)
        {
            switch (gr)
            {
            case InstantiateTracker.GameResource.shotGun:
                return(new InstantiateTracker.AhssShots());

            case InstantiateTracker.GameResource.effect:
                return(new InstantiateTracker.ExcessiveEffect());

            case InstantiateTracker.GameResource.flare:
                return(new InstantiateTracker.ExcessiveFlares());

            case InstantiateTracker.GameResource.bladeHit:
                return(new InstantiateTracker.BladeHitEffect());

            case InstantiateTracker.GameResource.bloodEffect:
                return(new InstantiateTracker.BloodEffect());

            case InstantiateTracker.GameResource.general:
                return(new InstantiateTracker.GenerallyExcessive());

            case InstantiateTracker.GameResource.name:
                return(new InstantiateTracker.ExcessiveNameChange());

            case InstantiateTracker.GameResource.bomb:
                return(new InstantiateTracker.ExcessiveBombs());
            }
            return(null);
        }
        public bool IsThingExcessive(InstantiateTracker.GameResource gr)
        {
            int thingToCheck = this.GetThingToCheck(gr);

            if (thingToCheck > -1)
            {
                return(this.thingsToCheck[thingToCheck].KickWorthy());
            }
            RCextensions.Add <InstantiateTracker.ThingToCheck>(ref this.thingsToCheck, this.GameResourceToThing(gr));
            return(false);
        }
 private int GetThingToCheck(InstantiateTracker.GameResource type)
 {
     for (int i = 0; i < this.thingsToCheck.Length; i++)
     {
         if (this.thingsToCheck[i].type == type)
         {
             return(i);
         }
     }
     return(-1);
 }