diff --git a/gamemodes/zombiesurvival/gamemode/cl_init.lua b/gamemodes/zombiesurvival/gamemode/cl_init.lua index 5c66632..8a41249 100644 --- a/gamemodes/zombiesurvival/gamemode/cl_init.lua +++ b/gamemodes/zombiesurvival/gamemode/cl_init.lua @@ -781,11 +781,12 @@ function GM:ZombieHUD() local y = ScrH() * 0.3 draw_SimpleTextBlur(translate.Get("waiting_for_next_wave"), "ZSHUDFont", x, y, COLOR_DARKRED, TEXT_ALIGN_CENTER) local pl = GAMEMODE.NextBossZombie + local bossname = GAMEMODE.NextBossZombieClass if pl and pl:IsValid() then if pl == MySelf then - draw_SimpleTextBlur(translate.Get("you_will_be_next_boss_zombie"), "ZSHUDFont", x, y+th, COLOR_RED, TEXT_ALIGN_CENTER) + draw_SimpleTextBlur(translate.Format("you_will_be_x_soon", "'"..bossname.."'"), "ZSHUDFont", x, y+th, COLOR_RED, TEXT_ALIGN_CENTER) else - draw_SimpleTextBlur(translate.Format("x_will_be_next_boss_zombie", pl:Name()), "ZSHUDFont", x, y+th, COLOR_GRAY, TEXT_ALIGN_CENTER) + draw_SimpleTextBlur(translate.Format("x_will_be_y_soon", pl:Name(), "'"..bossname.."'"), "ZSHUDFont", x, y+th, COLOR_GRAY, TEXT_ALIGN_CENTER) end end if MySelf:GetZombieClassTable().NeverAlive then @@ -1644,6 +1645,7 @@ end) net.Receive("zs_nextboss", function(length) GAMEMODE.NextBossZombie = net.ReadEntity() + GAMEMODE.NextBossZombieClass = net.ReadString() end) net.Receive("zs_zvols", function(length) diff --git a/gamemodes/zombiesurvival/gamemode/init.lua b/gamemodes/zombiesurvival/gamemode/init.lua index dbd2fe3..f6f3ec0 100644 --- a/gamemodes/zombiesurvival/gamemode/init.lua +++ b/gamemodes/zombiesurvival/gamemode/init.lua @@ -990,20 +990,22 @@ function GM:CalculateNextBoss() if ent:GetZombieClassTable().Boss and ent:Alive() then livingbosses = livingbosses + 1 if livingbosses >= 3 then return end - else - if ent:GetInfo("zs_nobosspick") == "0" then - table.insert(zombies, ent) - end + else + if ent:GetInfo("zs_nobosspick") == "0" then + table.insert(zombies, ent) end end - table.sort(zombies, BossZombieSort) - local newboss = zombies[1] - if not newboss or newboss ~= GAMEMODE.NextBossZombie then - net.Start("zs_nextboss") - net.WriteEntity(newboss) - net.Broadcast() - end - return newboss + end + table.sort(zombies, BossZombieSort) + local newboss = zombies[1] + if newboss and newboss:IsValid() then + local newbossclass = GAMEMODE.ZombieClasses[newboss:GetBossZombieIndex()].Name + net.Start("zs_nextboss") + net.WriteEntity(newboss) + net.WriteString(newbossclass) + net.Broadcast() + end + return newboss end function GM:LastBite(victim, attacker) diff --git a/gamemodes/zombiesurvival/gamemode/languages/english.lua b/gamemodes/zombiesurvival/gamemode/languages/english.lua index b36a4a0..cbd7a38 100644 --- a/gamemodes/zombiesurvival/gamemode/languages/english.lua +++ b/gamemodes/zombiesurvival/gamemode/languages/english.lua @@ -103,8 +103,8 @@ LANGUAGE.intermission = "Intermission" LANGUAGE.press_f2_for_the_points_shop = "Press F2 for the Points Shop!" LANGUAGE.breath = "Breath" LANGUAGE.zombie_volunteers = "Zombie Volunteers" -LANGUAGE.x_will_be_next_boss_zombie = "%s will become a boss zombie soon!" -LANGUAGE.you_will_be_next_boss_zombie = "You will become a boss zombie soon!" +LANGUAGE.x_will_be_y_soon = "%s will become %s soon!" +LANGUAGE.you_will_be_x_soon = "You will become %s soon!" LANGUAGE.x_discount_for_buying_between_waves = "%d%% discount for buying between waves!" LANGUAGE.number_of_initial_zombies_this_game = "Number of initial zombies this game (%d%%): %d" LANGUAGE.humans_closest_to_spawns_are_zombies = "The humans closest to the zombie spawns will start as zombies."