Remove circular dependency, sort some config items
This commit is contained in:
@@ -18,6 +18,6 @@ namespace Torch.API
|
||||
void BanPlayer(ulong steamId, bool banned = true);
|
||||
IMyPlayer GetPlayerBySteamId(ulong id);
|
||||
IMyPlayer GetPlayerByName(string name);
|
||||
MTObservableCollection<IChatMessage> ChatHistory { get; }
|
||||
List<IChatMessage> ChatHistory { get; }
|
||||
}
|
||||
}
|
@@ -69,9 +69,6 @@
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="Torch">
|
||||
<HintPath>..\Torch.Server\bin\x64\Release\Torch.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="VRage">
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\SpaceEngineers\Bin64\VRage.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
|
@@ -12,5 +12,5 @@ using System.Runtime.InteropServices;
|
||||
[assembly: AssemblyCulture("")]
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
[assembly: AssemblyVersion("1.0.89.455")]
|
||||
[assembly: AssemblyFileVersion("1.0.89.455")]
|
||||
[assembly: AssemblyVersion("1.0.89.507")]
|
||||
[assembly: AssemblyFileVersion("1.0.89.507")]
|
@@ -12,5 +12,5 @@ using System.Runtime.InteropServices;
|
||||
[assembly: AssemblyCulture("")]
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
[assembly: AssemblyVersion("1.0.89.455")]
|
||||
[assembly: AssemblyFileVersion("1.0.89.455")]
|
||||
[assembly: AssemblyVersion("1.0.89.507")]
|
||||
[assembly: AssemblyFileVersion("1.0.89.507")]
|
@@ -36,17 +36,16 @@ namespace Torch.Server
|
||||
|
||||
public void BindServer(ITorchServer server)
|
||||
{
|
||||
//ChatItems.ItemsSource = server.Multiplayer.ChatHistory;
|
||||
//server.Multiplayer.MessageReceived += Refresh;
|
||||
//Refresh();
|
||||
_server = server;
|
||||
server.Multiplayer.MessageReceived += Refresh;
|
||||
}
|
||||
|
||||
private void Refresh(IChatMessage chatItem = null)
|
||||
private void Refresh(IChatMessage chatItem, ref bool sendToOthers)
|
||||
{
|
||||
Dispatcher.Invoke(() =>
|
||||
{
|
||||
ChatItems.ItemsSource = null;
|
||||
//ChatItems.ItemsSource = _server.Multiplayer.Chat;
|
||||
ChatItems.ItemsSource = _server.Multiplayer.ChatHistory;
|
||||
});
|
||||
}
|
||||
|
||||
|
@@ -40,7 +40,7 @@
|
||||
<Label Content="Mods"/>
|
||||
<ListBox ItemsSource="{Binding Mods}" Width="130" Margin="3,0,3,3" Height="100" MouseDoubleClick="Mods_OnMouseDoubleClick"/>
|
||||
</StackPanel>
|
||||
<ScrollViewer Margin="3" DockPanel.Dock="Right">
|
||||
<ScrollViewer Margin="3" DockPanel.Dock="Right" Height="700">
|
||||
<StackPanel DataContext="{Binding SessionSettings}">
|
||||
<Expander Header="Multipliers">
|
||||
<StackPanel Margin="10,0,0,0">
|
||||
@@ -81,13 +81,34 @@
|
||||
</Expander>
|
||||
<Expander Header="Environment">
|
||||
<StackPanel Margin="10,0,0,0">
|
||||
<CheckBox IsChecked="{Binding EnableSunRotation}" Content="Enable Sun Rotation" Margin="3"/>
|
||||
<CheckBox IsChecked="{Binding EnableRealisticSound}" Content="Enable Realistic Sound" Margin="3"/>
|
||||
<CheckBox IsChecked="{Binding EnableAirtightness}" Content="Enable Airtightness" Margin="3"/>
|
||||
<CheckBox IsChecked="{Binding EnableOxygen}" Content="Enable Oxygen" Margin="3"/>
|
||||
<CheckBox IsChecked="{Binding EnableDestructibleBlocks}" Content="Enable Destructible Blocks" Margin="3"/>
|
||||
<CheckBox IsChecked="{Binding EnableToolShake}" Content="Enable Tool Shake" Margin="3"/>
|
||||
<CheckBox IsChecked="{Binding EnableVoxelDestruction}" Content="Enable Voxel Destruction" Margin="3"/>
|
||||
<CheckBox IsChecked="{Binding EnableSunRotation}" Content="Enable Sun Rotation" Margin="3"/>
|
||||
<DockPanel>
|
||||
<TextBox Text="{Binding SunRotationInterval}" Margin="3" Width="70"/>
|
||||
<Label Content="Sun Rotation Interval (mins)"/>
|
||||
</DockPanel>
|
||||
<CheckBox IsChecked="{Binding EnableFlora}" Content="Enable Flora" Margin="3"/>
|
||||
<DockPanel>
|
||||
<TextBox Text="{Binding FloraDensity}" Margin="3" Width="70"/>
|
||||
<Label Content="Flora Density"/>
|
||||
</DockPanel>
|
||||
<DockPanel>
|
||||
<TextBox Text="{Binding FloraDensityMultiplier}" Margin="3" Width="70"/>
|
||||
<Label Content="Flora Density Multiplier"/>
|
||||
</DockPanel>
|
||||
<DockPanel>
|
||||
<TextBox Text="{Binding ViewDistance}" Margin="3" Width="70"/>
|
||||
<Label Content="View Distance (meters)"/>
|
||||
</DockPanel>
|
||||
<DockPanel>
|
||||
<TextBox Text="{Binding WorldSize}" Margin="3" Width="70"/>
|
||||
<Label Content="World Size (km)"/>
|
||||
</DockPanel>
|
||||
<DockPanel>
|
||||
<ComboBox SelectedItem="{Binding EnvironmentHostility}" ItemsSource="{Binding EnvironmentHostilityValues}" Margin="3" Width="100" DockPanel.Dock="Left"/>
|
||||
<Label Content="Environment Hostility"></Label>
|
||||
@@ -114,7 +135,6 @@
|
||||
<CheckBox IsChecked="{Binding EnableRespawnShips}" Content="Enable Respawn Ships" Margin="3"/>
|
||||
<CheckBox IsChecked="{Binding EnableScripterRole}" Content="Enable Scripter Role" Margin="3"/>
|
||||
<CheckBox IsChecked="{Binding EnableSpectator}" Content="Enable Spectator Camera" Margin="3"/>
|
||||
<CheckBox IsChecked="{Binding EnableRealisticSound}" Content="Enable Realistic Sound" Margin="3"/>
|
||||
<CheckBox IsChecked="{Binding ResetOwnership}" Content="Reset Ownership" Margin="3"/>
|
||||
<CheckBox IsChecked="{Binding DeleteRespawnShips}" Content="Remove Respawn Ships on Logoff" Margin="3"/>
|
||||
<CheckBox IsChecked="{Binding EnableThrusterDamage}" Content="Enable Thruster Damage" Margin="3"/>
|
||||
@@ -125,14 +145,6 @@
|
||||
<ComboBox SelectedItem="{Binding GameMode}" ItemsSource="{Binding GameModeValues}" Margin="3" Width="100" DockPanel.Dock="Left"/>
|
||||
<Label Content="Game Mode"></Label>
|
||||
</DockPanel>
|
||||
<DockPanel>
|
||||
<TextBox Text="{Binding FloraDensity}" Margin="3" Width="70"/>
|
||||
<Label Content="Flora Density"/>
|
||||
</DockPanel>
|
||||
<DockPanel>
|
||||
<TextBox Text="{Binding FloraDensityMultiplier}" Margin="3" Width="70"/>
|
||||
<Label Content="Flora Density Multiplier"/>
|
||||
</DockPanel>
|
||||
<DockPanel>
|
||||
<TextBox Text="{Binding MaxBackupSaves}" Margin="3" Width="70"/>
|
||||
<Label Content="Max Backup Saves"/>
|
||||
@@ -161,18 +173,6 @@
|
||||
<TextBox Text="{Binding SpawnTimeMultiplier}" Margin="3" Width="70"/>
|
||||
<Label Content="Respawn Time Multiplier"/>
|
||||
</DockPanel>
|
||||
<DockPanel>
|
||||
<TextBox Text="{Binding SunRotationInterval}" Margin="3" Width="70"/>
|
||||
<Label Content="Sun Rotation Interval (mins)"/>
|
||||
</DockPanel>
|
||||
<DockPanel>
|
||||
<TextBox Text="{Binding ViewDistance}" Margin="3" Width="70"/>
|
||||
<Label Content="View Distance (meters)"/>
|
||||
</DockPanel>
|
||||
<DockPanel>
|
||||
<TextBox Text="{Binding WorldSize}" Margin="3" Width="70"/>
|
||||
<Label Content="World Size (km)"/>
|
||||
</DockPanel>
|
||||
</StackPanel>
|
||||
</Expander>
|
||||
</StackPanel>
|
||||
|
@@ -39,7 +39,7 @@ namespace Torch.Managers
|
||||
public event Action<ulong, ConnectionState> PlayerLeft;
|
||||
public event MessageReceivedDel MessageReceived;
|
||||
|
||||
public MTObservableCollection<IChatMessage> ChatHistory { get; } = new MTObservableCollection<IChatMessage>();
|
||||
public List<IChatMessage> ChatHistory { get; } = new List<IChatMessage>();
|
||||
public Dictionary<ulong, IMyPlayer> Players { get; } = new Dictionary<ulong, IMyPlayer>();
|
||||
public IMyPlayer LocalPlayer => MySession.Static.LocalHumanPlayer;
|
||||
private readonly ITorchBase _torch;
|
||||
@@ -139,8 +139,7 @@ namespace Torch.Managers
|
||||
private static void RemoveHandlers()
|
||||
{
|
||||
var eventField = typeof(GameServer).GetField("<backing_store>ValidateAuthTicketResponse", BindingFlags.NonPublic | BindingFlags.Instance);
|
||||
var eventDel = eventField?.GetValue(SteamServerAPI.Instance.GameServer) as MulticastDelegate;
|
||||
if (eventDel != null)
|
||||
if (eventField?.GetValue(SteamServerAPI.Instance.GameServer) is MulticastDelegate eventDel)
|
||||
{
|
||||
foreach (var handle in eventDel.GetInvocationList())
|
||||
{
|
||||
|
Reference in New Issue
Block a user