From 5db98e37f445b0f2cc81bf4ccdf9ba1ea55e6ea9 Mon Sep 17 00:00:00 2001 From: ! Freaku <92618708+Freaku17@users.noreply.github.com> Date: Fri, 16 Feb 2024 01:05:27 +0530 Subject: [PATCH] Update some gamemodes for co-op support (these games were made to also be played in co-op, during 1.6 Eric forgot to add the ability to register games in Campaign. Those a mod was required to play such gamemodes in co-op. But thanks to now added Campaign support, there's no more need of such a mod.) --- plugins/minigames/bot_chase.py | 21 +++++------ plugins/minigames/explodo_run.py | 31 ++++++++------- plugins/minigames/extinction.py | 32 ++++++++-------- plugins/minigames/lame_fight.py | 23 ++++++------ plugins/minigames/you_vs_bombsquad.py | 54 +++++++++++++-------------- 5 files changed, 78 insertions(+), 83 deletions(-) diff --git a/plugins/minigames/bot_chase.py b/plugins/minigames/bot_chase.py index 7ef9e80..8beabad 100644 --- a/plugins/minigames/bot_chase.py +++ b/plugins/minigames/bot_chase.py @@ -16,17 +16,6 @@ if TYPE_CHECKING: from typing import Any, List, Type, Optional -def ba_get_api_version(): - return 8 - - -def ba_get_levels(): - return [bs._level.Level( - 'Bot Chase', gametype=BotChaseGame, - settings={}, - preview_texture_name='footballStadiumPreview')] - - class Player(bs.Player['Team']): """Our player type for this game""" @@ -221,3 +210,13 @@ class BotChaseGame(bs.TeamGameActivity[Player, Team]): results.set_team_score(team, int(1000.0 * longest_life)) self.end(results=results) + + +# ba_meta export plugin +class plugin(babase.Plugin): + def __init__(self): + ## Campaign support ## + babase.app.classic.add_coop_practice_level(bs.Level( + name = 'Bot Chase', gametype=BotChaseGame, + settings={}, + preview_texture_name='footballStadiumPreview')) diff --git a/plugins/minigames/explodo_run.py b/plugins/minigames/explodo_run.py index b6bd60d..b9705dc 100644 --- a/plugins/minigames/explodo_run.py +++ b/plugins/minigames/explodo_run.py @@ -18,22 +18,6 @@ if TYPE_CHECKING: from typing import Any, Type, Dict, List, Optional -def ba_get_api_version(): - return 8 - - -def ba_get_levels(): - return [bs._level.Level( - 'Explodo Run', - gametype=ExplodoRunGame, - settings={}, - preview_texture_name='rampagePreview'), bs._level.Level( - 'Epic Explodo Run', - gametype=ExplodoRunGame, - settings={'Epic Mode': True}, - preview_texture_name='rampagePreview')] - - class Player(bs.Player['Team']): """Our player type for this game.""" @@ -142,3 +126,18 @@ class ExplodoRunGame(bs.TeamGameActivity[Player, Team]): # Ends the activity. self.end(results) + + +# ba_meta export plugin +class plugin(babase.Plugin): + def __init__(self): + ## Campaign support ## + babase.app.classic.add_coop_practice_level(bs.Level( + name = 'Explodo Run', + gametype=ExplodoRunGame, + settings={}, + preview_texture_name='rampagePreview')) + babase.app.classic.add_coop_practice_level(bs.Level('Epic Explodo Run', + gametype=ExplodoRunGame, + settings={'Epic Mode': True}, + preview_texture_name='rampagePreview')) diff --git a/plugins/minigames/extinction.py b/plugins/minigames/extinction.py index 436a631..443ead5 100644 --- a/plugins/minigames/extinction.py +++ b/plugins/minigames/extinction.py @@ -18,23 +18,6 @@ if TYPE_CHECKING: from typing import Any, Sequence, Optional, Type -def ba_get_api_version(): - return 8 - - -def ba_get_levels(): - return [bs._level.Level( - 'Extinction', - gametype=NewMeteorShowerGame, - settings={'Epic Mode': False}, - preview_texture_name='footballStadiumPreview'), - bs._level.Level( - 'Epic Extinction', - gametype=NewMeteorShowerGame, - settings={'Epic Mode': True}, - preview_texture_name='footballStadiumPreview')] - - class Meteor(bs.Actor): """A giant meteor instead of bombs.""" @@ -255,3 +238,18 @@ class NewMeteorShowerGame(bs.TeamGameActivity[Player, Team]): results.set_team_score(team, int(1000.0 * longest_life)) self.end(results=results) + + +# ba_meta export plugin +class plugin(babase.Plugin): + def __init__(self): + ## Campaign support ## + babase.app.classic.add_coop_practice_level(bs.Level( + name = 'Extinction', + gametype=NewMeteorShowerGame, + settings={'Epic Mode': False}, + preview_texture_name='footballStadiumPreview')) + babase.app.classic.add_coop_practice_level(bs.Level('Epic Extinction', + gametype=NewMeteorShowerGame, + settings={'Epic Mode': True}, + preview_texture_name='footballStadiumPreview')) diff --git a/plugins/minigames/lame_fight.py b/plugins/minigames/lame_fight.py index 6b69d13..2ef629c 100644 --- a/plugins/minigames/lame_fight.py +++ b/plugins/minigames/lame_fight.py @@ -18,18 +18,6 @@ if TYPE_CHECKING: from typing import Any, Type, Dict, List, Optional -def ba_get_api_version(): - return 6 - - -def ba_get_levels(): - return [babase._level.Level( - 'Lame Fight', - gametype=LameFightGame, - settings={}, - preview_texture_name='courtyardPreview')] - - class Player(bs.Player['Team']): """Our player type for this game.""" @@ -168,3 +156,14 @@ class LameFightGame(bs.TeamGameActivity[Player, Team]): # Ends the activity. self.end(results) + + +# ba_meta export plugin +class plugin(babase.Plugin): + def __init__(self): + ## Campaign support ## + babase.app.classic.add_coop_practice_level(bs.Level( + name = 'Lame Fight', + gametype=LameFightGame, + settings={}, + preview_texture_name='courtyardPreview')) diff --git a/plugins/minigames/you_vs_bombsquad.py b/plugins/minigames/you_vs_bombsquad.py index c28a539..09be08d 100644 --- a/plugins/minigames/you_vs_bombsquad.py +++ b/plugins/minigames/you_vs_bombsquad.py @@ -33,33 +33,6 @@ else: name_hard = 'You vs BS Hard' name_hard_epic = 'You vs BS Hard Epic' -# def ba_get_api_version(): -# return 6 - - -def ba_get_levels(): - return [babase._level.Level( - name_easy, - gametype=TUvsBombSquad, - settings={}, - preview_texture_name='footballStadiumPreview'), - babase._level.Level( - name_easy_epic, - gametype=TUvsBombSquad, - settings={'Epic Mode': True}, - preview_texture_name='footballStadiumPreview'), - - babase._level.Level( - name_hard, - gametype=TUvsBombSquad, - settings={'Hard Mode': True}, - preview_texture_name='footballStadiumPreview'), - babase._level.Level( - name_hard_epic, - gametype=TUvsBombSquad, - settings={'Hard Mode': True, - 'Epic Mode': True}, - preview_texture_name='footballStadiumPreview')] #### BOTS #### @@ -503,3 +476,30 @@ class TUvsBombSquad(bs.TeamGameActivity[Player, Team]): # Ends the activity. self.end(results) + + +# ba_meta export plugin +class plugin(babase.Plugin): + def __init__(self): + ## Campaign support ## + babase.app.classic.add_coop_practice_level(bs.Level( + name = name_easy, + gametype=TUvsBombSquad, + settings={}, + preview_texture_name='footballStadiumPreview')) + babase.app.classic.add_coop_practice_level(bs.Level( + name_easy_epic, + gametype=TUvsBombSquad, + settings={'Epic Mode': True}, + preview_texture_name='footballStadiumPreview')) + babase.app.classic.add_coop_practice_level(bs.Level( + name = name_hard, + gametype=TUvsBombSquad, + settings={'Hard Mode': True}, + preview_texture_name='footballStadiumPreview')) + babase.app.classic.add_coop_practice_level(bs.Level( + name = name_hard_epic, + gametype=TUvsBombSquad, + settings={'Hard Mode': True, + 'Epic Mode': True}, + preview_texture_name='footballStadiumPreview'))