Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <sourcemod>
- #include <sdktools>
- #pragma semicolon 1
- float Check[MAXPLAYERS+1];
- bool aktiverat = false;
- public Plugin myinfo = {
- name = "Block round end event",
- author = "Snarcus",
- description = "Blocks round end event when only 1 player on the server (spam deaths = not blocked)",
- version = "1.0",
- url = "www.Snarcus.nu"
- };
- // Sätt mp_ignore_round_win_conditions till "1" när pluginnet laddas //
- public void OnPluginStart()
- {
- HookEvent("player_death", Death);
- ServerCommand("mp_ignore_round_win_conditions 1");
- }
- // Kolla antalet spelare när någon lämnar //
- public void OnClientDisconnect_Post(client)
- {
- Check[client] = 0.0; // Inaktivera check vid disconnect(kan skapa memory leak ifall man inte avslutar)
- if (GetClientCount() == 1) // Endast 1 spelare = inga round end events kommer att avsluta rundan
- {
- ServerCommand("mp_ignore_round_win_conditions 1");
- aktiverat = true;
- }
- }
- // Kolla antalet spelare när någon har anslutit //
- public void OnClientPutInServer(client)
- {
- if (GetClientCount() >= 2) // Fler än eller exakt 2 spelare = round end events avslutar rundan
- {
- ServerCommand("mp_ignore_round_win_conditions 0");
- aktiverat = false;
- }
- }
- // När spelaren dör, kontrollera ifall han har dött några fler gånger inom 1 sekund (ja(spawnkill) = starta om rundan) //
- public void Death(Event event, const char[] name, bool dontBroadcast)
- {
- if(aktiverat) return;
- int client = GetClientOfUserId(GetEventInt(event, "userid"));
- float fGameTime = GetGameTime();
- if ((fGameTime - Check[client]) < 1)
- {
- ServerCommand("mp_restartgame 1");
- }
- Check[client] = fGameTime;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement