38 lines
1.1 KiB
C#
38 lines
1.1 KiB
C#
namespace Barotrauma
|
|
{
|
|
partial class MissionMode : GameMode
|
|
{
|
|
private Mission mission;
|
|
|
|
public override Mission Mission
|
|
{
|
|
get
|
|
{
|
|
return mission;
|
|
}
|
|
}
|
|
|
|
public MissionMode(GameModePreset preset, object param)
|
|
: base(preset, param)
|
|
{
|
|
Location[] locations = { GameMain.GameSession.StartLocation, GameMain.GameSession.EndLocation };
|
|
if (param is MissionType missionType)
|
|
{
|
|
mission = Mission.LoadRandom(locations, GameMain.NetLobbyScreen.LevelSeed, false, missionType);
|
|
}
|
|
else if (param is MissionPrefab missionPrefab)
|
|
{
|
|
mission = missionPrefab.Instantiate(locations);
|
|
}
|
|
else if (param is Mission)
|
|
{
|
|
mission = (Mission)param;
|
|
}
|
|
else
|
|
{
|
|
throw new System.ArgumentException("Unrecognized MissionMode parameter \"" + param + "\"");
|
|
}
|
|
}
|
|
}
|
|
}
|