mirror of
https://github.com/misternebula/quantum-space-buddies.git
synced 2025-02-13 12:40:50 +00:00
fix some stuff
This commit is contained in:
parent
8b9452a6e1
commit
3b4fcbf477
@ -1,5 +1,6 @@
|
||||
using OWML.ModHelper.Events;
|
||||
using QSB.Events;
|
||||
using QSB.Utility;
|
||||
using System;
|
||||
using System.Linq;
|
||||
using UnityEngine;
|
||||
@ -151,6 +152,7 @@ namespace QSB.Animation
|
||||
|
||||
private void SuitUp()
|
||||
{
|
||||
DebugLog.DebugWrite($"Suit on for {PlayerId}");
|
||||
_bodyAnim.runtimeAnimatorController = _suitedAnimController;
|
||||
_anim.runtimeAnimatorController = _suitedAnimController;
|
||||
_unsuitedGraphics.SetActive(false);
|
||||
@ -159,6 +161,7 @@ namespace QSB.Animation
|
||||
|
||||
private void SuitDown()
|
||||
{
|
||||
DebugLog.DebugWrite($"Suit off for {PlayerId}");
|
||||
_bodyAnim.runtimeAnimatorController = _unsuitedAnimController;
|
||||
_anim.runtimeAnimatorController = _unsuitedAnimController;
|
||||
_unsuitedGraphics.SetActive(true);
|
||||
|
@ -1,4 +1,8 @@
|
||||
using QSB.Messaging;
|
||||
using OWML.Common;
|
||||
using QSB.Messaging;
|
||||
using QSB.TransformSync;
|
||||
using QSB.Utility;
|
||||
using System.Linq;
|
||||
|
||||
namespace QSB.Events
|
||||
{
|
||||
@ -26,8 +30,24 @@ namespace QSB.Events
|
||||
|
||||
public override void OnServerReceive(ToggleMessage message)
|
||||
{
|
||||
DebugLog.DebugWrite($"[S] Get ready event from {message.FromId}", MessageType.Success);
|
||||
if (message.FromId == PlayerRegistry.LocalPlayerId)
|
||||
{
|
||||
return;
|
||||
}
|
||||
PlayerRegistry.GetPlayer(message.AboutId).IsReady = message.ToggleValue;
|
||||
PlayerState.LocalInstance.Send();
|
||||
}
|
||||
|
||||
public override void OnReceiveRemote(ToggleMessage message)
|
||||
{
|
||||
DebugLog.DebugWrite($"Get ready event from {message.FromId}", MessageType.Success);
|
||||
foreach (var item in PlayerRegistry.GetSyncObjects<TransformSync.TransformSync>()
|
||||
.Where(x => x != null && x.IsReady && x.ReferenceSector != null && x.PlayerId == LocalPlayerId))
|
||||
{
|
||||
DebugLog.DebugWrite($"* Sending sector for netid {item.netId.Value}...");
|
||||
GlobalMessenger<uint, QSBSector>.FireEvent(EventNames.QSBSectorChange, item.netId.Value, item.ReferenceSector);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -28,11 +28,12 @@ namespace QSB.Events
|
||||
|
||||
public override void OnServerReceive(PlayerMessage message)
|
||||
{
|
||||
DebugLog.DebugWrite($"Server get state request from {message.FromId}");
|
||||
DebugLog.DebugWrite($"[S] Get state request from {message.FromId}");
|
||||
PlayerState.LocalInstance.Send();
|
||||
foreach (var item in PlayerRegistry.GetSyncObjects<TransformSync.TransformSync>()
|
||||
.Where(x => x != null && x.IsReady && x.ReferenceSector != null))
|
||||
{
|
||||
DebugLog.DebugWrite($"* Sending sector for netid {item.netId.Value}...");
|
||||
GlobalMessenger<uint, QSBSector>.FireEvent(EventNames.QSBSectorChange, item.netId.Value, item.ReferenceSector);
|
||||
}
|
||||
}
|
||||
|
@ -21,6 +21,7 @@ namespace QSB
|
||||
public string Name { get; set; }
|
||||
public bool IsReady { get; set; }
|
||||
public State State { get; set; }
|
||||
//public int[] SectorCacheList = new int[PlayerRegistry.NetworkObjectCount];
|
||||
|
||||
public PlayerInfo(uint id)
|
||||
{
|
||||
@ -53,7 +54,8 @@ namespace QSB
|
||||
Translator?.ChangeEquipState(FlagsHelper.IsSet(State, State.Translator));
|
||||
ProbeLauncher?.ChangeEquipState(FlagsHelper.IsSet(State, State.ProbeLauncher));
|
||||
Signalscope?.ChangeEquipState(FlagsHelper.IsSet(State, State.Signalscope));
|
||||
PlayerRegistry.GetSyncObject<AnimationSync>(NetId)?.SetSuitState(FlagsHelper.IsSet(State, State.Suit));
|
||||
QSB.Helper.Events.Unity.RunWhen(() => PlayerRegistry.GetSyncObject<AnimationSync>(NetId) != null,
|
||||
() => PlayerRegistry.GetSyncObject<AnimationSync>(NetId).SetSuitState(FlagsHelper.IsSet(State, State.Suit)));
|
||||
}
|
||||
|
||||
public bool GetState(State state)
|
||||
|
@ -44,11 +44,13 @@ namespace QSB
|
||||
|
||||
public static void HandleFullStateMessage(PlayerStateMessage message)
|
||||
{
|
||||
DebugLog.DebugWrite($"Handle full state message");
|
||||
DebugLog.DebugWrite($"Handle full state message for player {message.AboutId}");
|
||||
var player = GetPlayer(message.AboutId);
|
||||
player.Name = message.PlayerName;
|
||||
player.IsReady = message.PlayerReady;
|
||||
DebugLog.DebugWrite($"* Is ready? : {player.IsReady}");
|
||||
player.State = message.PlayerState;
|
||||
DebugLog.DebugWrite($"* Suit is on? : {FlagsHelper.IsSet(player.State, State.Suit)}");
|
||||
//DebugLog.DebugWrite($"Updating state of player {player.NetId} to : {Environment.NewLine}" +
|
||||
// $"{DebugLog.GenerateTable(Enum.GetNames(typeof(State)).ToList(), FlagsHelper.FlagsToListSet(player.State))}");
|
||||
if (LocalPlayer.IsReady)
|
||||
|
@ -142,7 +142,7 @@ namespace QSB
|
||||
Destroy(GetComponent<RespawnOnDeath>());
|
||||
Destroy(GetComponent<PreventShipDestruction>());
|
||||
EventList.Reset();
|
||||
DebugLog.ToConsole("Server stopped!", MessageType.Info);
|
||||
DebugLog.ToConsole("[S] Server stopped!", MessageType.Info);
|
||||
PlayerRegistry.PlayerList.ForEach(player => player.HudMarker?.Remove());
|
||||
NetworkServer.connections.ToList().ForEach(CleanupConnection);
|
||||
base.OnStopServer();
|
||||
|
@ -1,6 +1,7 @@
|
||||
using OWML.ModHelper.Events;
|
||||
using QSB.DeathSync;
|
||||
using QSB.Events;
|
||||
using QSB.Utility;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Networking;
|
||||
|
||||
@ -75,6 +76,7 @@ namespace QSB.TimeSync
|
||||
|
||||
private void Init()
|
||||
{
|
||||
DebugLog.DebugWrite("WakeUpSync init - Request state!");
|
||||
GlobalMessenger.FireEvent(EventNames.QSBPlayerStatesRequest);
|
||||
_state = State.Loaded;
|
||||
gameObject.AddComponent<PreserveTimeScale>();
|
||||
@ -165,6 +167,7 @@ namespace QSB.TimeSync
|
||||
_isFirstFastForward = false;
|
||||
Physics.SyncTransforms();
|
||||
SpinnerUI.Hide();
|
||||
DebugLog.DebugWrite("ResetTimeScale - Request state!");
|
||||
FindObjectOfType<SleepTimerUI>().Invoke("OnEndFastForward");
|
||||
GlobalMessenger.FireEvent(EventNames.QSBPlayerStatesRequest);
|
||||
RespawnOnDeath.Instance.Init();
|
||||
|
@ -1,5 +1,6 @@
|
||||
using QSB.Events;
|
||||
using QSB.Tools;
|
||||
using QSB.Utility;
|
||||
using UnityEngine;
|
||||
|
||||
namespace QSB.TransformSync
|
||||
@ -23,6 +24,7 @@ namespace QSB.TransformSync
|
||||
|
||||
Player.IsReady = true;
|
||||
GlobalMessenger<bool>.FireEvent(EventNames.QSBPlayerReady, true);
|
||||
DebugLog.DebugWrite("PlayerCameraSync init done - Request state!");
|
||||
GlobalMessenger.FireEvent(EventNames.QSBPlayerStatesRequest);
|
||||
|
||||
return body;
|
||||
|
@ -32,6 +32,8 @@ namespace QSB.TransformSync
|
||||
{
|
||||
if (!QSBSceneManager.IsInUniverse)
|
||||
{
|
||||
//var player = PlayerRegistry.GetPlayer(message.FromId);
|
||||
//player.SectorCacheList[message.AboutId - message.FromId + 1] = message.ObjectId;
|
||||
return;
|
||||
}
|
||||
var sector = WorldRegistry.GetObject<QSBSector>(message.ObjectId);
|
||||
|
@ -3,6 +3,6 @@
|
||||
"settings": {
|
||||
"defaultServerIP": "localhost",
|
||||
"port": 7777,
|
||||
"debugMode": false
|
||||
"debugMode": true
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user