#include #include #include new bool:G_bIsHuman[66]; new bool:G_bIsZombie[66]; public Plugin myinfo = { name = "MVP_Stars", author = "zaCade", description = "", version = "1.0", url = "" }; public void OnPluginStart() { HookEvent("round_start", Event_RoundStart, EventHookMode:1); HookEvent("round_end", Event_RoundEnd, EventHookMode:1); } public void ZR_OnClientInfected(int client, int attacker, bool motherInfect, bool respawnOverride, bool respawn) { G_bIsHuman[client] = 0; G_bIsZombie[client] = 1; } public ZR_OnClientHumanPost(client, bool:respawn, bool:protect) { G_bIsHuman[client] = 1; G_bIsZombie[client] = 0; } public Action:Event_RoundStart(Handle:event, String:name[], bool:dontBroadcast) { new client = 1; while (client <= MaxClients) { G_bIsHuman[client] = 1; G_bIsZombie[client] = 0; client++; } return Action:0; } public Action:Event_RoundEnd(Handle:event, String:name[], bool:dontBroadcast) { switch (GetEventInt(event, "winner")) { case 2: { CreateTimer(0.2, OnZombiesWin, any:0, 2); } case 3: { CreateTimer(0.2, OnHumansWin, any:0, 2); } default: { } } return Action:0; } public Action:OnHumansWin(Handle:timer) { new client = 1; while (client <= MaxClients) { new var1; if (IsClientInGame(client) && IsPlayerAlive(client) && !IsClientObserver(client) && !IsFakeClient(client)) { new var2; if (G_bIsHuman[client] && !G_bIsZombie[client]) { CS_SetMVPCount(client, CS_GetMVPCount(client) + 1); new String:sAuthID[64]; if (!GetClientAuthString(client, sAuthID, 64, true)) { Format(sAuthID, 64, "UNKNOWN"); } } } client++; } return Action:0; } public Action:OnZombiesWin(Handle:timer) { new client = 1; while (client <= MaxClients) { new var1; if (IsClientInGame(client) && IsPlayerAlive(client) && !IsClientObserver(client) && !IsFakeClient(client)) { new var2; if (G_bIsZombie[client] && !G_bIsHuman[client]) { new String:sAuthID[64]; if (!GetClientAuthString(client, sAuthID, 64, true)) { Format(sAuthID, 64, "UNKNOWN"); } } } client++; } return Action:0; }