diff --git a/PlaytimeReward/scripting/PlaytimeReward.sp b/PlaytimeReward/scripting/PlaytimeReward.sp
index 9c43cb7f..a2bcaa69 100644
--- a/PlaytimeReward/scripting/PlaytimeReward.sp
+++ b/PlaytimeReward/scripting/PlaytimeReward.sp
@@ -54,86 +54,27 @@ public Action Timer_CheckConnectionTime(Handle hThis)
 
 		g_iClientConnectionTime[i] += 30;
 
-		if (g_iClientConnectionTime[i] > 36000 && g_iClientConnectionTime[i] <= 36030)
+
+		char sPlayerEvent[32];
+		int iTime = 1800;
+		for (;;)
 		{
-			LogPlayerEvent(i, "triggered", "staying_server_600");
-			g_iClientConnectionTime[i] = 0; //start over, but i doubt someone will ever reach so far ;)
-		}
-		else if (g_iClientConnectionTime[i] > 34200 && g_iClientConnectionTime[i] <= 34230)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_570");
-		}
-		else if (g_iClientConnectionTime[i] > 32400 && g_iClientConnectionTime[i] <= 32430)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_540");
-		}
-		else if (g_iClientConnectionTime[i] > 30600 && g_iClientConnectionTime[i] <= 30630)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_510");
-		}
-		else if (g_iClientConnectionTime[i] > 28800 && g_iClientConnectionTime[i] <= 28830)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_480");
-		}
-		else if (g_iClientConnectionTime[i] > 27000 && g_iClientConnectionTime[i] <= 27030)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_450");
-		}
-		else if (g_iClientConnectionTime[i] > 25200 && g_iClientConnectionTime[i] <= 25230)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_420");
-		}
-		else if (g_iClientConnectionTime[i] > 23400 && g_iClientConnectionTime[i] <= 23430)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_390");
-		}
-		else if (g_iClientConnectionTime[i] > 21600 && g_iClientConnectionTime[i] <= 21630)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_360");
-		}
-		else if (g_iClientConnectionTime[i] > 19800 && g_iClientConnectionTime[i] <= 19830)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_330");
-		}
-		else if (g_iClientConnectionTime[i] > 18000 && g_iClientConnectionTime[i] <= 18030)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_300");
-		}
-		else if (g_iClientConnectionTime[i] > 16200 && g_iClientConnectionTime[i] <= 16230)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_270");
-		}
-		else if (g_iClientConnectionTime[i] > 14400 && g_iClientConnectionTime[i] <= 14430)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_240");
-		}
-		else if (g_iClientConnectionTime[i] > 12600 && g_iClientConnectionTime[i] <= 12630)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_210");
-		}
-		else if (g_iClientConnectionTime[i] > 10800 && g_iClientConnectionTime[i] <= 10830)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_180");
-		}
-		else if (g_iClientConnectionTime[i] > 9000 && g_iClientConnectionTime[i] <= 99030)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_150");
-		}
-		else if (g_iClientConnectionTime[i] > 7200 && g_iClientConnectionTime[i] <= 7230)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_120");
-		}
-		else if (g_iClientConnectionTime[i] > 5400 && g_iClientConnectionTime[i] <= 5430)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_90");
-		}
-		else if (g_iClientConnectionTime[i] > 3600 && g_iClientConnectionTime[i] <= 3630)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_60");
-		}
-		else if (g_iClientConnectionTime[i] > 1800 && g_iClientConnectionTime[i] <= 1830)
-		{
-			LogPlayerEvent(i, "triggered", "staying_server_30");
+			if ((g_iClientConnectionTime[i] / iTime) < 1.0)
+			{
+				if (iTime == 1800)
+					break;
+
+				if (iTime >= 36000)
+				{
+					LogPlayerEvent(i, "triggered", "staying_server_600");
+					g_iClientConnectionTime[i] = 0; //start over, but i doubt someone will ever reach so far ;)
+				}
+
+				Format(sPlayerEvent, sizeof(sPlayerEvent), "staying_server_%d", (iTime - 1800) / 60);
+				LogPlayerEvent(i, "triggered", sPlayerEvent);
+				break;
+			}
+			iTime += 1800;
 		}
 	}
 }