TopDown Engine  v3.6
MoreMountains.TopDownEngine.ExplodudesMultiplayerLevelManager Class Reference

An example class of how you can extend the MultiplayerLevelManager to implement your own specific rules. This one's rules are as follows : More...

Inheritance diagram for MoreMountains.TopDownEngine.ExplodudesMultiplayerLevelManager:
MoreMountains.TopDownEngine.MultiplayerLevelManager MoreMountains.TopDownEngine.LevelManager MoreMountains.Tools.MMSingleton< LevelManager > MoreMountains.Tools.MMEventListener< TopDownEngineEvent >

Public Member Functions

virtual void Update ()
 On update, we update our countdowns and check for input if we're in game over state More...
 
- Public Member Functions inherited from MoreMountains.TopDownEngine.MultiplayerLevelManager
override void PlayerDead (Character playerCharacter)
 Kills the specified player More...
 
- Public Member Functions inherited from MoreMountains.TopDownEngine.LevelManager
virtual void GotoLevel (string levelName)
 Gets the player to the specified level More...
 
virtual void TriggerEndLevelEvents ()
 Triggers end of level events More...
 
virtual void ToggleCharacterPause ()
 Toggles Character Pause More...
 
virtual void FreezeCharacters ()
 Freezes the character(s) More...
 
virtual void UnFreezeCharacters ()
 Unfreezes the character(s) More...
 
virtual void SetCurrentCheckpoint (CheckPoint newCheckPoint)
 Sets the current checkpoint with the one set in parameter. This checkpoint will be saved and used should the player die. More...
 
virtual void OnMMEvent (TopDownEngineEvent engineEvent)
 Catches TopDownEngineEvents and acts on them, playing the corresponding sounds More...
 
- Public Member Functions inherited from MoreMountains.Tools.MMEventListener< TopDownEngineEvent >
void OnMMEvent (T eventType)
 

Public Attributes

int GameDuration = 99
 the duration of the game, in seconds More...
 
- Public Attributes inherited from MoreMountains.TopDownEngine.MultiplayerLevelManager
List< CheckPointSpawnPoints
 the list of checkpoints (in order) to use to spawn characters More...
 
CameraModes CameraMode = CameraModes.Split
 the selected camera mode (either group, all targets in one screen, or split screen) More...
 
GameObject GroupCameraRig
 the group camera rig More...
 
GameObject SplitCameraRig
 the split camera rig More...
 
MultiplayerGUIManager MPGUIManager
 the multiplayer GUI Manager More...
 
- Public Attributes inherited from MoreMountains.TopDownEngine.LevelManager
bool AutoAttributePlayerIDs = true
 the prefab you want for your player More...
 
Character[] PlayerPrefabs
 the list of player prefabs to instantiate More...
 
List< CharacterSceneCharacters
 a list of Characters already present in the scene before runtime. If this list is filled, PlayerPrefabs will be ignored More...
 
CheckPoint InitialSpawnPoint
 the checkpoint to use as initial spawn point if no point of entry is specified More...
 
CheckPoint CurrentCheckpoint
 the currently active checkpoint (the last checkpoint passed by the player) More...
 
Transform[] PointsOfEntry
 A list of this level's points of entry, which can be used from other levels as initial targets. More...
 
float IntroFadeDuration =1f
 duration of the initial fade in (in seconds) More...
 
float SpawnDelay = 0f
 
float OutroFadeDuration =1f
 duration of the fade to black at the end of the level (in seconds) More...
 
int FaderID = 0
 the ID to use when triggering the event (should match the ID on the fader you want to use) More...
 
MMTweenType FadeCurve = new MMTweenType(MMTween.MMTweenCurve.EaseInOutCubic)
 the curve to use for in and out fades More...
 
float RespawnDelay = 2f
 duration between a death of the main character and its respawn More...
 
float DelayBeforeDeathScreen = 1f
 the delay, in seconds, before displaying the death screen once the player is dead More...
 
bool UseLevelBounds = true
 if this is true, this level will use the level bounds defined on this LevelManager. Set it to false when using the Rooms system. More...
 
MMLoadScene.LoadingSceneModes LoadingSceneMode = MMLoadScene.LoadingSceneModes.MMSceneLoadingManager
 the method to use to load the destination level More...
 
string LoadingSceneName = "LoadingScreen"
 the name of the MMSceneLoadingManager scene you want to use More...
 
MMAdditiveSceneLoadingManagerSettings AdditiveLoadingSettings
 the settings to use when loading the scene in additive mode More...
 
bool SetPlayerAsFeedbackRangeCenter = false
 if this is true, an event will be triggered on player instantiation to set the range target of all feedbacks to it More...
 

Protected Member Functions

override void Initialization ()
 On init, we initialize our points and countdowns More...
 
override void OnPlayerDeath (Character playerCharacter)
 Whenever a player dies, we check if we only have one left alive, in which case we trigger our game over routine More...
 
virtual IEnumerator GameOver ()
 On game over, freezes time and displays the game over screen More...
 
virtual void CheckForGameOver ()
 If we're in game over state, checks for input and restarts the game if needed More...
 
override void OnEnable ()
 Starts listening for pickable item events More...
 
override void OnDisable ()
 Stops listening for pickable item events More...
 
- Protected Member Functions inherited from MoreMountains.TopDownEngine.MultiplayerLevelManager
override void Awake ()
 On awake we handle our different camera modes More...
 
virtual void HandleCameraModes ()
 Sets up the scene to match the selected camera mode More...
 
override void SpawnMultipleCharacters ()
 Spawns all characters at the specified spawn points More...
 
- Protected Member Functions inherited from MoreMountains.TopDownEngine.LevelManager
virtual void Start ()
 On Start we grab our dependencies and initialize spawn More...
 
virtual IEnumerator InitializationCoroutine ()
 
virtual void InstantiatePlayableCharacters ()
 Instantiate playable characters based on the ones specified in the PlayerPrefabs list in the LevelManager's inspector. More...
 
virtual void CheckpointAssignment ()
 Assigns all respawnable objects in the scene to their checkpoint More...
 
virtual void SpawnSingleCharacter ()
 Spawns a playable character into the scene More...
 
virtual IEnumerator GotoLevelCo (string levelName)
 Waits for a short time and then loads the specified level More...
 
virtual IEnumerator PlayerDeadCo ()
 Triggers the death screen display after a short delay More...
 
virtual void Respawn ()
 Initiates the respawn More...
 
virtual IEnumerator SoloModeRestart ()
 Coroutine that kills the player, stops the camera, resets the points. More...
 
- Protected Member Functions inherited from MoreMountains.Tools.MMSingleton< LevelManager >
virtual void InitializeSingleton ()
 Initializes the singleton. More...
 

Protected Attributes

string _playerID
 
bool _gameOver = false
 
- Protected Attributes inherited from MoreMountains.TopDownEngine.LevelManager
DateTime _started
 
int _savedPoints
 
Collider _collider
 
Vector3 _initialSpawnPointPosition
 

Properties

virtual string WinnerID [get, set]
 the ID of the winner More...
 
- Properties inherited from MoreMountains.TopDownEngine.LevelManager
virtual Bounds? LevelBounds [get]
 the level limits, camera and player won't go beyond this point. More...
 
virtual Collider BoundsCollider [get, protected set]
 
virtual TimeSpan RunningTime [get]
 the elapsed time since the start of the level More...
 
virtual List< CheckPointCheckpoints [get, protected set]
 
virtual List< CharacterPlayers [get, protected set]
 
- Properties inherited from MoreMountains.Tools.MMSingleton< LevelManager >
static T Instance [get]
 Singleton design pattern More...
 

Additional Inherited Members

- Public Types inherited from MoreMountains.TopDownEngine.MultiplayerLevelManager
enum  CameraModes { CameraModes.Split, CameraModes.Group }
 the types of cameras to choose from More...
 
- Static Public Member Functions inherited from MoreMountains.Tools.MMSingleton< LevelManager >
static T TryGetInstance ()
 
- Static Public Attributes inherited from MoreMountains.Tools.MMSingleton< LevelManager >
static bool HasInstance
 
static T Current
 
- Static Protected Member Functions inherited from MoreMountains.TopDownEngine.LevelManager
static void InitializeStatics ()
 Statics initialization to support enter play modes More...
 
- Static Protected Attributes inherited from MoreMountains.Tools.MMSingleton< LevelManager >
static T _instance
 

Detailed Description

An example class of how you can extend the MultiplayerLevelManager to implement your own specific rules. This one's rules are as follows :

  • if all players (but one) are dead, the game stops and whoever got the most coins wins
  • at the end of the game, a Winner screen is displayed and tapping Jump anywhere restarts the game

Member Function Documentation

◆ CheckForGameOver()

virtual void MoreMountains.TopDownEngine.ExplodudesMultiplayerLevelManager.CheckForGameOver ( )
protectedvirtual

If we're in game over state, checks for input and restarts the game if needed

◆ GameOver()

virtual IEnumerator MoreMountains.TopDownEngine.ExplodudesMultiplayerLevelManager.GameOver ( )
protectedvirtual

On game over, freezes time and displays the game over screen

Returns

◆ Initialization()

override void MoreMountains.TopDownEngine.ExplodudesMultiplayerLevelManager.Initialization ( )
protectedvirtual

On init, we initialize our points and countdowns

Reimplemented from MoreMountains.TopDownEngine.LevelManager.

◆ OnDisable()

override void MoreMountains.TopDownEngine.ExplodudesMultiplayerLevelManager.OnDisable ( )
protectedvirtual

Stops listening for pickable item events

Reimplemented from MoreMountains.TopDownEngine.LevelManager.

◆ OnEnable()

override void MoreMountains.TopDownEngine.ExplodudesMultiplayerLevelManager.OnEnable ( )
protectedvirtual

Starts listening for pickable item events

Reimplemented from MoreMountains.TopDownEngine.LevelManager.

◆ OnPlayerDeath()

override void MoreMountains.TopDownEngine.ExplodudesMultiplayerLevelManager.OnPlayerDeath ( Character  playerCharacter)
protectedvirtual

Whenever a player dies, we check if we only have one left alive, in which case we trigger our game over routine

Parameters
playerCharacter

Reimplemented from MoreMountains.TopDownEngine.MultiplayerLevelManager.

◆ Update()

virtual void MoreMountains.TopDownEngine.ExplodudesMultiplayerLevelManager.Update ( )
virtual

On update, we update our countdowns and check for input if we're in game over state

Member Data Documentation

◆ _gameOver

bool MoreMountains.TopDownEngine.ExplodudesMultiplayerLevelManager._gameOver = false
protected

◆ _playerID

string MoreMountains.TopDownEngine.ExplodudesMultiplayerLevelManager._playerID
protected

◆ GameDuration

int MoreMountains.TopDownEngine.ExplodudesMultiplayerLevelManager.GameDuration = 99

the duration of the game, in seconds

Property Documentation

◆ WinnerID

virtual string MoreMountains.TopDownEngine.ExplodudesMultiplayerLevelManager.WinnerID
getset

the ID of the winner


The documentation for this class was generated from the following file: