initial cs-lua merge work

This commit is contained in:
Oiltanker
2022-04-11 22:44:53 +03:00
parent ae2b84cceb
commit 1e6ac68e86
44 changed files with 786 additions and 1046 deletions
@@ -104,7 +104,7 @@ namespace Barotrauma.Networking
bool isOwner = GameMain.Server.OwnerConnection != null && c.Connection == GameMain.Server.OwnerConnection;
if (similarity + c.ChatSpamSpeed > 5.0f && !isOwner && !GameMain.Lua.game.disableSpamFilter)
if (similarity + c.ChatSpamSpeed > 5.0f && !isOwner && !GameMain.LuaCs.game.disableSpamFilter)
{
GameMain.Server.KarmaManager.OnSpamFilterTriggered(c);
@@ -125,7 +125,7 @@ namespace Barotrauma.Networking
c.ChatSpamSpeed += similarity + 0.5f;
if (c.ChatSpamTimer > 0.0f && !isOwner && !GameMain.Lua.game.disableSpamFilter)
if (c.ChatSpamTimer > 0.0f && !isOwner && !GameMain.LuaCs.game.disableSpamFilter)
{
ChatMessage denyMsg = Create("", TextManager.Get("SpamFilterBlocked").Value, ChatMessageType.Server, null);
c.ChatSpamTimer = 10.0f;
@@ -133,8 +133,7 @@ namespace Barotrauma.Networking
return;
}
var should = new LuaResult(GameMain.Lua.hook.Call("chatMessage", new object[] { txt, c, type }));
var should = new LuaResult(GameMain.LuaCs.hook.Call("chatMessage", txt, c, type));
if (should.Bool())
{
@@ -202,7 +202,7 @@ namespace Barotrauma.Networking
#endif
}
GameMain.Lua.Initialize();
GameMain.LuaCs.Initialize();
TickRate = serverSettings.TickRate;
@@ -290,8 +290,8 @@ namespace Barotrauma.Networking
SendConsoleMessage("Granted all permissions to " + newClient.Name + ".", newClient);
}
GameMain.Lua.hook.Call("clientConnected", new object[] { newClient });
GameMain.LuaCs.hook.Call("clientConnected", newClient);
SendChatMessage($"ServerMessage.JoinedServer~[client]={clName}", ChatMessageType.Server, null, changeType: PlayerConnectionChangeType.Joined);
serverSettings.ServerDetailsChanged = true;
@@ -378,7 +378,7 @@ namespace Barotrauma.Networking
Character character = Character.CharacterList[i];
if (character.IsDead || !character.ClientDisconnected) { continue; }
if (!GameMain.Lua.game.disableDisconnectCharacter)
if (!GameMain.LuaCs.game.disableDisconnectCharacter)
{
character.KillDisconnectedTimer += deltaTime;
character.SetStun(1.0f);
@@ -700,7 +700,7 @@ namespace Barotrauma.Networking
ClientPacketHeader header = (ClientPacketHeader)inc.ReadByte();
GameMain.Lua.networking.NetMessageReceived(inc, header, connectedClient);
GameMain.LuaCs.networking.NetMessageReceived(inc, header, connectedClient);
switch (header)
{
@@ -1804,7 +1804,7 @@ namespace Barotrauma.Networking
outmsg.Write((byte)ServerNetObject.CLIENT_LIST);
outmsg.Write(LastClientListUpdateID);
GameMain.Lua.hook.Call("writeClientList", c, outmsg);
GameMain.LuaCs.hook.Call("writeClientList", c, outmsg);
outmsg.Write((byte)connectedClients.Count);
foreach (Client client in connectedClients)
@@ -2251,7 +2251,7 @@ namespace Barotrauma.Networking
AssignJobs(teamClients);
var result = new LuaResult(GameMain.Lua.hook.Call("jobsAssigned"));
var result = new LuaResult(GameMain.LuaCs.hook.Call("jobsAssigned"));
List<CharacterInfo> characterInfos = new List<CharacterInfo>();
foreach (Client client in teamClients)
@@ -2429,7 +2429,7 @@ namespace Barotrauma.Networking
{
if (!(GameMain.GameSession?.GameMode is CampaignMode))
{
if (!GameMain.Lua.game.overrideTraitors)
if (!GameMain.LuaCs.game.overrideTraitors)
{
TraitorManager = new TraitorManager();
TraitorManager.Start(this);
@@ -2455,7 +2455,7 @@ namespace Barotrauma.Networking
roundStartTime = DateTime.Now;
GameMain.Lua.hook.Call("roundStart", new object[] { });
GameMain.LuaCs.hook.Call("roundStart");
startGameCoroutine = null;
yield return CoroutineStatus.Success;
@@ -2586,7 +2586,7 @@ namespace Barotrauma.Networking
Log("Ending the round...", ServerLog.MessageType.ServerMessage);
}
GameMain.Lua.hook.Call("roundEnd", new object[] { });
GameMain.LuaCs.hook.Call("roundEnd");
string endMessage = TextManager.FormatServerMessage("RoundSummaryRoundHasEnded");
@@ -2697,7 +2697,7 @@ namespace Barotrauma.Networking
newName = Client.SanitizeName(newName);
if (newName == c.Name && newJob == c.PreferredJob && newTeam == c.PreferredTeam) { return false; }
var result = new LuaResult(GameMain.Lua.hook.Call("tryChangeClientName", c, newName, newJob, newTeam));
var result = new LuaResult(GameMain.LuaCs.hook.Call("tryChangeClientName", c, newName, newJob, newTeam));
if (!result.IsNull())
{
@@ -2892,7 +2892,7 @@ namespace Barotrauma.Networking
{
if (client == null) return;
GameMain.Lua.hook.Call("clientDisconnected", new object[] { client });
GameMain.LuaCs.hook.Call("clientDisconnected", client);
if (gameStarted && client.Character != null)
{
@@ -3133,7 +3133,7 @@ namespace Barotrauma.Networking
senderName = null;
senderCharacter = null;
}
else if (type == ChatMessageType.Radio && !GameMain.Lua.game.overrideSignalRadio)
else if (type == ChatMessageType.Radio && !GameMain.LuaCs.game.overrideSignalRadio)
{
//send to chat-linked wifi components
Signal s = new Signal(message, sender: senderCharacter, source: senderRadio.Item);
@@ -3142,7 +3142,7 @@ namespace Barotrauma.Networking
var hookChatMsg = ChatMessage.Create(senderName, message, (ChatMessageType)type, senderCharacter, senderClient, changeType);
var should = new LuaResult(GameMain.Lua.hook.Call("modifyChatMessage", new object[] { hookChatMsg, senderRadio }));
var should = new LuaResult(GameMain.LuaCs.hook.Call("modifyChatMessage", hookChatMsg, senderRadio));
if (should.Bool())
return;
@@ -3874,8 +3874,7 @@ namespace Barotrauma.Networking
{
if (GameMain.Server == null || !GameMain.Server.ServerSettings.SaveServerLogs) { return; }
if(GameMain.Lua.hook != null)
GameMain.Lua.hook.Call("serverLog", new object[] { line, messageType });
GameMain.LuaCs?.hook?.Call("serverLog", line, messageType);
GameMain.Server.ServerSettings.ServerLog.WriteLine(line, messageType);
@@ -182,21 +182,21 @@ namespace Barotrauma.Networking
{
if (netServer == null) { return; }
var result = new LuaResult(GameMain.Lua.hook.Call("lidgren.handleConnection", inc));
if (!result.IsNull())
if (result.Bool())
goto ignore;
else
return;
var skipDeny = false;
{
var result = new LuaResult(GameMain.LuaCs.hook.Call("lidgren.handleConnection", inc));
if (!result.IsNull()) {
if (result.Bool()) skipDeny = true;
else return;
}
}
if (connectedClients.Count >= serverSettings.MaxPlayers)
if (!skipDeny && connectedClients.Count >= serverSettings.MaxPlayers)
{
inc.SenderConnection.Deny(DisconnectReason.ServerFull.ToString());
return;
}
ignore:
if (serverSettings.BanList.IsBanned(inc.SenderConnection.RemoteEndPoint.Address, 0, 0, out string banReason))
{
//IP banned: deny immediately
@@ -206,7 +206,7 @@ namespace Barotrauma.Networking
protected void UpdatePendingClient(PendingClient pendingClient)
{
var result = new LuaResult(GameMain.Lua.hook.Call("handlePendingClient", pendingClient));
var result = new LuaResult(GameMain.LuaCs.hook.Call("handlePendingClient", pendingClient));
if (result.Bool())
goto ignore;
@@ -25,7 +25,7 @@ namespace Barotrauma.Networking
MultiPlayerCampaign campaign = GameMain.GameSession.GameMode as MultiPlayerCampaign;
foreach (Client c in networkMember.ConnectedClients)
{
if (GameMain.Lua.game.overrideRespawnSub)
if (GameMain.LuaCs.game.overrideRespawnSub)
continue;
if (!c.InGame) { continue; }
@@ -125,7 +125,7 @@ namespace Barotrauma.Networking
private bool ShouldStartRespawnCountdown(int characterToRespawnCount)
{
if (GameMain.Lua.game.overrideRespawnSub)
if (GameMain.LuaCs.game.overrideRespawnSub)
{
characterToRespawnCount = 0;
}
@@ -136,7 +136,7 @@ namespace Barotrauma.Networking
{
if (RespawnShuttle != null)
{
if (!GameMain.Lua.game.overrideRespawnSub)
if (!GameMain.LuaCs.game.overrideRespawnSub)
{
RespawnShuttle.Velocity = Vector2.Zero;
}
@@ -185,7 +185,7 @@ namespace Barotrauma.Networking
{
if (RespawnShuttle != null)
{
if (GameMain.Lua.game.overrideRespawnSub)
if (GameMain.LuaCs.game.overrideRespawnSub)
{
CurrentState = State.Waiting;
}
@@ -206,7 +206,7 @@ namespace Barotrauma.Networking
Vector2 spawnPos = FindSpawnPos();
if (!GameMain.Lua.game.overrideRespawnSub)
if (!GameMain.LuaCs.game.overrideRespawnSub)
{
RespawnCharacters(spawnPos);
}
@@ -94,7 +94,7 @@ namespace Barotrauma.Networking
ChatMessage.CanUseRadio(sender.Character, out WifiComponent senderRadio) &&
ChatMessage.CanUseRadio(recipient.Character, out WifiComponent recipientRadio))
{
var should = new LuaResult(GameMain.Lua.hook.Call("canUseVoiceRadio", new object[] { sender, recipient }));
var should = new LuaResult(GameMain.LuaCs.hook.Call("canUseVoiceRadio", new object[] { sender, recipient }));
if (!should.IsNull())
return should.Bool();
@@ -102,7 +102,7 @@ namespace Barotrauma.Networking
if (recipientRadio.CanReceive(senderRadio)) { return true; }
}
var should2 = new LuaResult(GameMain.Lua.hook.Call("changeLocalVoiceRange", new object[] { sender, recipient }));
var should2 = new LuaResult(GameMain.LuaCs.hook.Call("changeLocalVoiceRange", new object[] { sender, recipient }));
float range = 1.0f;
if (!should2.IsNull())