Started making comment and documents about some of the modules. Also added Libs dlls to make sure they dnt get lost or messwith in version discrepancies
This commit is contained in:
parent
e397f15f8e
commit
6af98f1fdf
9 changed files with 3926 additions and 67 deletions
BIN
Libs/Assembly-CSharp_publicized.dll
Normal file
BIN
Libs/Assembly-CSharp_publicized.dll
Normal file
Binary file not shown.
BIN
Libs/SRML.Editor.dll
Normal file
BIN
Libs/SRML.Editor.dll
Normal file
Binary file not shown.
BIN
Libs/SRML.dll
Normal file
BIN
Libs/SRML.dll
Normal file
Binary file not shown.
3810
Libs/SRML.xml
Normal file
3810
Libs/SRML.xml
Normal file
File diff suppressed because it is too large
Load diff
20
SRMP/Console/Console Commands.txt
Normal file
20
SRMP/Console/Console Commands.txt
Normal file
|
@ -0,0 +1,20 @@
|
|||
The following console Commands work in the pop up console
|
||||
|
||||
cheat money [amount]
|
||||
Add or Remove the given amount from the curret money score
|
||||
|
||||
cheat keys [amount]
|
||||
Add or Remove the given amount of keys from the current amount
|
||||
|
||||
cheat allgadgets
|
||||
Unlocks all of the gagets in the game
|
||||
|
||||
cheat spawn [id] ([amount])
|
||||
|
||||
tp [DestinationPlayer]
|
||||
Teleports the player that entered in the commant to the player entered
|
||||
listplayers
|
||||
Prints the list of current players to the console
|
||||
|
||||
sleep [Hours]
|
||||
Sleep command followed by the time in in game hours to "sleep"". Fast forwards the game the alotted hours.
|
|
@ -10,7 +10,7 @@ namespace SRMultiplayer.Networking
|
|||
{
|
||||
public class NetworkGordo : MonoBehaviour
|
||||
{
|
||||
public string ID { get { return Gordo.id == null ? Gordo.GetComponentInParent<GadgetSite>(true).id : Gordo.id; } }
|
||||
public string ID { get { return Gordo.id == null ? Gordo.GetComponentInParent<GadgetSite>(true).id : Gordo.id; } }
|
||||
public GordoEat Gordo;
|
||||
public NetworkRegion Region;
|
||||
|
||||
|
@ -33,36 +33,51 @@ namespace SRMultiplayer.Networking
|
|||
|
||||
public void Burst()
|
||||
{
|
||||
//if object is in active mark the reach target
|
||||
if (gameObject.activeInHierarchy)
|
||||
{
|
||||
StartCoroutine(ReachedTarget());
|
||||
}
|
||||
else
|
||||
{
|
||||
//if not just dismiss the gordo completely
|
||||
Gordo.gameObject.SetActive(false);
|
||||
Gordo.SetEatenCount(-1);
|
||||
}
|
||||
}
|
||||
|
||||
//process the gordo burst reaction
|
||||
private IEnumerator ReachedTarget()
|
||||
{
|
||||
//start the burst and begin sounds and animations
|
||||
Gordo.WillStartBurst();
|
||||
Gordo.GetComponent<GordoFaceAnimator>().SetTrigger("Strain");
|
||||
SECTR_AudioSystem.Play(Gordo.strainCue, Gordo.transform.position, false);
|
||||
//wait for amination/sounds to finish
|
||||
yield return new WaitForSeconds(2f);
|
||||
SECTR_AudioSystem.Play(Gordo.burstCue, Gordo.transform.position, false);
|
||||
|
||||
//if the gordo has a destroy effect process it
|
||||
if (Gordo.destroyFX != null)
|
||||
{
|
||||
//play the spawn behavior for destroy events for the gordo that is bursting
|
||||
GameObject gameObject = SRBehaviour.SpawnAndPlayFX(Gordo.destroyFX, Gordo.transform.position + Vector3.up * 2f, Gordo.transform.rotation);
|
||||
//get the gordo slime type
|
||||
Identifiable component = Gordo.gameObject.GetComponent<Identifiable>();
|
||||
//get the color of the current gordo
|
||||
Color[] colors = SlimeUtil.GetColors(Gordo.gameObject, (component != null) ? component.id : Identifiable.Id.NONE, true);
|
||||
//get the slime children spawned by the gordo
|
||||
RecolorSlimeMaterial[] componentsInChildren = gameObject.GetComponentsInChildren<RecolorSlimeMaterial>();
|
||||
for (int i = 0; i < componentsInChildren.Length; i++)
|
||||
{
|
||||
//foreach slime in the count spawned by the gordo, set their coloring
|
||||
componentsInChildren[i].SetColors(colors[0], colors[1], colors[2]);
|
||||
}
|
||||
}
|
||||
//trigger the burst completed event
|
||||
Gordo.DidCompleteBurst();
|
||||
|
||||
//despawn the bursted gordo from game
|
||||
Gordo.gameObject.SetActive(false);
|
||||
Gordo.SetEatenCount(-1);
|
||||
yield break;
|
||||
|
|
|
@ -274,7 +274,7 @@ namespace SRMultiplayer.Networking
|
|||
|
||||
private static void OnFireColumnActivate(PacketFireColumnActivate packet)
|
||||
{
|
||||
if(Globals.FireColumns.TryGetValue(packet.ID, out NetworkFireColumn netColumn))
|
||||
if (Globals.FireColumns.TryGetValue(packet.ID, out NetworkFireColumn netColumn))
|
||||
{
|
||||
netColumn.Column.ActivateFire();
|
||||
}
|
||||
|
@ -321,9 +321,9 @@ namespace SRMultiplayer.Networking
|
|||
|
||||
private static void OnOasis(PacketOasis packet)
|
||||
{
|
||||
foreach(var oasisData in packet.Oasis)
|
||||
foreach (var oasisData in packet.Oasis)
|
||||
{
|
||||
if(SRSingleton<SceneContext>.Instance.GameModel.AllOases().TryGetValue(oasisData.ID, out OasisModel model))
|
||||
if (SRSingleton<SceneContext>.Instance.GameModel.AllOases().TryGetValue(oasisData.ID, out OasisModel model))
|
||||
{
|
||||
model.isLive = oasisData.Model.isLive;
|
||||
|
||||
|
@ -337,30 +337,44 @@ namespace SRMultiplayer.Networking
|
|||
#region Exchanges
|
||||
private static void OnExchangeTryAccept(PacketExchangeTryAccept packet)
|
||||
{
|
||||
//get the exchange type
|
||||
var type = (ExchangeDirector.OfferType)packet.Type;
|
||||
//check if current scene (view) contains the item in question
|
||||
if (SRSingleton<SceneContext>.Instance.ExchangeDirector.worldModel.currOffers.ContainsKey(type))
|
||||
{
|
||||
//handle the scene changes for the given offer
|
||||
var offer = SRSingleton<SceneContext>.Instance.ExchangeDirector.worldModel.currOffers[type];
|
||||
//cycle through requested items
|
||||
foreach (ExchangeDirector.RequestedItemEntry requestedItemEntry in offer.requests)
|
||||
{
|
||||
//check if the item can be accespted
|
||||
//is on the board and not already completed
|
||||
if (requestedItemEntry.id == (Identifiable.Id)packet.ID && !requestedItemEntry.IsComplete())
|
||||
{
|
||||
//mark submit to log
|
||||
SRMP.Log($"Exchange TryAccept for {(Identifiable.Id)packet.ID} ({(ExchangeDirector.OfferType)packet.Type}", "SERVER");
|
||||
//mark progress
|
||||
requestedItemEntry.progress++;
|
||||
|
||||
//if the given item completes the necesary quantity
|
||||
if (offer.IsComplete())
|
||||
{
|
||||
foreach(var rewarder in Resources.FindObjectsOfTypeAll<RancherProgressAwarder>())
|
||||
foreach (var rewarder in Resources.FindObjectsOfTypeAll<RancherProgressAwarder>())
|
||||
{
|
||||
rewarder.AwardIfType(type);
|
||||
}
|
||||
SRSingleton<SceneContext>.Instance.ExchangeDirector.ClearOffer(type);
|
||||
}
|
||||
|
||||
//trigger offer status changed
|
||||
SRSingleton<SceneContext>.Instance.ExchangeDirector.OfferDidChange();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
private static void OnExchangePrepareDaily(PacketExchangePrepareDaily packet)
|
||||
{
|
||||
SRSingleton<SceneContext>.Instance.ExchangeDirector.worldModel.pendingOfferRancherIds = packet.pendingOfferRancherIds;
|
||||
|
@ -414,7 +428,7 @@ namespace SRMultiplayer.Networking
|
|||
|
||||
private static void OnTreasurePods(PacketTreasurePods packet)
|
||||
{
|
||||
foreach(var pod in packet.TreasurePods)
|
||||
foreach (var pod in packet.TreasurePods)
|
||||
{
|
||||
if (SRSingleton<SceneContext>.Instance.GameModel.AllPods().TryGetValue(pod.ID, out TreasurePodModel model))
|
||||
{
|
||||
|
@ -446,7 +460,7 @@ namespace SRMultiplayer.Networking
|
|||
if (model.HasAttached())
|
||||
{
|
||||
var netDrone = model.attached.transform.GetComponentInChildren<NetworkDrone>(true);
|
||||
if(netDrone != null)
|
||||
if (netDrone != null)
|
||||
{
|
||||
netDrone.PositionRotationUpdate(packet.Position, packet.Rotation, false);
|
||||
}
|
||||
|
@ -675,7 +689,7 @@ namespace SRMultiplayer.Networking
|
|||
extractor.nextProduceTime = packet.nextProduceTime;
|
||||
extractor.queuedToProduce = packet.queuedToProduce;
|
||||
|
||||
if(extractor.cyclesRemaining <= 0)
|
||||
if (extractor.cyclesRemaining <= 0)
|
||||
{
|
||||
var extractorScript = extractor.transform.GetComponent<Extractor>();
|
||||
if (extractorScript != null && extractorScript.gameObject.activeInHierarchy)
|
||||
|
@ -770,7 +784,7 @@ namespace SRMultiplayer.Networking
|
|||
private static void OnGadgets(PacketGadgets packet)
|
||||
{
|
||||
List<int> regions = new List<int>();
|
||||
foreach(var gadgetData in packet.Gadgets)
|
||||
foreach (var gadgetData in packet.Gadgets)
|
||||
{
|
||||
if (SRSingleton<SceneContext>.Instance.GameModel.AllGadgetSites().TryGetValue(gadgetData.ID, out GadgetSiteModel model))
|
||||
{
|
||||
|
@ -823,7 +837,7 @@ namespace SRMultiplayer.Networking
|
|||
}
|
||||
}
|
||||
|
||||
foreach(var region in regions)
|
||||
foreach (var region in regions)
|
||||
{
|
||||
if (Globals.Regions.TryGetValue(region, out NetworkRegion netRegion))
|
||||
{
|
||||
|
@ -881,7 +895,7 @@ namespace SRMultiplayer.Networking
|
|||
|
||||
private static void OnPuzzleSlots(PacketPuzzleSlots packet)
|
||||
{
|
||||
foreach(var puzzleSlotData in packet.PuzzleSlots)
|
||||
foreach (var puzzleSlotData in packet.PuzzleSlots)
|
||||
{
|
||||
if (SRSingleton<SceneContext>.Instance.GameModel.AllSlots().TryGetValue(puzzleSlotData.ID, out PuzzleSlotModel model))
|
||||
{
|
||||
|
@ -919,7 +933,7 @@ namespace SRMultiplayer.Networking
|
|||
|
||||
private static void OnGordos(PacketGordos packet)
|
||||
{
|
||||
foreach(var gordoData in packet.Gordos)
|
||||
foreach (var gordoData in packet.Gordos)
|
||||
{
|
||||
if (SRSingleton<SceneContext>.Instance.GameModel.AllGordos().TryGetValue(gordoData.ID, out GordoModel model))
|
||||
{
|
||||
|
@ -959,7 +973,7 @@ namespace SRMultiplayer.Networking
|
|||
|
||||
private static void OnAccessDoors(PacketAccessDoors packet)
|
||||
{
|
||||
foreach(var doorData in packet.Doors)
|
||||
foreach (var doorData in packet.Doors)
|
||||
{
|
||||
if (SRSingleton<SceneContext>.Instance.GameModel.AllDoors().TryGetValue(doorData.ID, out AccessDoorModel model))
|
||||
{
|
||||
|
@ -1216,7 +1230,7 @@ namespace SRMultiplayer.Networking
|
|||
}
|
||||
|
||||
var phaseSiteDirector = GameObject.FindObjectOfType<PhaseSiteDirector>();
|
||||
if(phaseSiteDirector != null)
|
||||
if (phaseSiteDirector != null)
|
||||
{
|
||||
phaseSiteDirector.ResetAllSites();
|
||||
foreach (PhaseSite phaseSite in new List<PhaseSite>(phaseSiteDirector.availablePhaseSites))
|
||||
|
@ -1295,7 +1309,7 @@ namespace SRMultiplayer.Networking
|
|||
|
||||
private static void OnLandPlotSiloAmmoAdd(PacketLandPlotSiloAmmoAdd packet)
|
||||
{
|
||||
if(NetworkAmmo.All.TryGetValue(packet.ID, out NetworkAmmo ammo))
|
||||
if (NetworkAmmo.All.TryGetValue(packet.ID, out NetworkAmmo ammo))
|
||||
{
|
||||
ammo.MaybeAddToSpecificSlot((Identifiable.Id)packet.Ident, null, packet.Slot, packet.Count, packet.Overflow);
|
||||
SRMP.Log($"NetworkAmmo add slot {packet.Slot} (Type: {(Identifiable.Id)packet.Ident} - Count: {packet.Count}) for {packet.ID}", "CLIENT");
|
||||
|
@ -1488,7 +1502,7 @@ namespace SRMultiplayer.Networking
|
|||
|
||||
private static void OnLandPlots(PacketLandplots packet)
|
||||
{
|
||||
foreach(var plotData in packet.LandPlots)
|
||||
foreach (var plotData in packet.LandPlots)
|
||||
{
|
||||
if (SRSingleton<SceneContext>.Instance.GameModel.AllLandPlots().TryGetValue(plotData.ID, out LandPlotModel model))
|
||||
{
|
||||
|
@ -1538,7 +1552,7 @@ namespace SRMultiplayer.Networking
|
|||
{
|
||||
var type = (PacketActorFX.FXType)packet.Type;
|
||||
var slimeEat = netActor.GetComponentInChildren<SlimeEat>();
|
||||
if(slimeEat != null)
|
||||
if (slimeEat != null)
|
||||
{
|
||||
if (type == PacketActorFX.FXType.SlimeEatFavoriteFX)
|
||||
{
|
||||
|
@ -1748,7 +1762,7 @@ namespace SRMultiplayer.Networking
|
|||
|
||||
private static void OnActors(PacketActors packet)
|
||||
{
|
||||
foreach(var actorData in packet.Actors)
|
||||
foreach (var actorData in packet.Actors)
|
||||
{
|
||||
if (!Globals.Actors.ContainsKey(actorData.ID))
|
||||
{
|
||||
|
@ -1809,7 +1823,7 @@ namespace SRMultiplayer.Networking
|
|||
|
||||
Globals.Actors.Add(netActor.ID, netActor);
|
||||
}
|
||||
catch(Exception ex)
|
||||
catch (Exception ex)
|
||||
{
|
||||
SRMP.Log($"Could not create actor {actorData.ID}: {ex}");
|
||||
}
|
||||
|
@ -1966,7 +1980,7 @@ namespace SRMultiplayer.Networking
|
|||
SRSingleton<SceneContext>.Instance.PlayerState.model.ammoDict[state].slots = new Ammo.Slot[slotCount];
|
||||
for (int j = 0; j < slotCount; j++)
|
||||
{
|
||||
if(reader.ReadBoolean())
|
||||
if (reader.ReadBoolean())
|
||||
{
|
||||
SRSingleton<SceneContext>.Instance.PlayerState.model.ammoDict[state].slots[j] = new Ammo.Slot((Identifiable.Id)reader.ReadUInt16(), reader.ReadInt32());
|
||||
if (reader.ReadBoolean())
|
||||
|
|
|
@ -19,7 +19,7 @@ namespace SRMultiplayer.Networking
|
|||
if (!Globals.PacketSize.ContainsKey(type))
|
||||
Globals.PacketSize.Add(type, 0);
|
||||
Globals.PacketSize[type] += im.LengthBytes;
|
||||
switch(type)
|
||||
switch (type)
|
||||
{
|
||||
//Player
|
||||
case PacketType.PlayerLoaded: OnPlayerLoaded(new PacketPlayerLoaded(im), player); break;
|
||||
|
@ -140,7 +140,7 @@ namespace SRMultiplayer.Networking
|
|||
#region Race
|
||||
private static void OnRaceTrigger(PacketRaceTrigger packet, NetworkPlayer player)
|
||||
{
|
||||
if(Globals.RaceTriggers.TryGetValue(packet.ID, out NetworkRaceTrigger trigger))
|
||||
if (Globals.RaceTriggers.TryGetValue(packet.ID, out NetworkRaceTrigger trigger))
|
||||
{
|
||||
trigger.Activate();
|
||||
}
|
||||
|
@ -172,7 +172,7 @@ namespace SRMultiplayer.Networking
|
|||
var generator = QuicksilverEnergyGenerator.allGenerators.FirstOrDefault(g => g.id == packet.ID);
|
||||
if (generator)
|
||||
{
|
||||
if(Globals.LocalPlayer.CurrentGenerator.id == generator.id)
|
||||
if (Globals.LocalPlayer.CurrentGenerator.id == generator.id)
|
||||
{
|
||||
generator.Activate();
|
||||
}
|
||||
|
@ -242,9 +242,9 @@ namespace SRMultiplayer.Networking
|
|||
oasis.SetLive(!model.gameObj.activeInHierarchy);
|
||||
|
||||
var oasisTriggers = GameObject.FindObjectsOfType<OasisWaterTrigger>();
|
||||
foreach(var trigger in oasisTriggers)
|
||||
foreach (var trigger in oasisTriggers)
|
||||
{
|
||||
if(trigger.oasisToScale == oasis && !trigger.hasAlreadyActivated)
|
||||
if (trigger.oasisToScale == oasis && !trigger.hasAlreadyActivated)
|
||||
{
|
||||
if (trigger.scaleCue != null)
|
||||
{
|
||||
|
@ -312,7 +312,7 @@ namespace SRMultiplayer.Networking
|
|||
{
|
||||
SRMP.Log($"Exchange TryAccept for {(Identifiable.Id)packet.ID} ({(ExchangeDirector.OfferType)packet.Type}", "SERVER");
|
||||
requestedItemEntry.progress++;
|
||||
if(offer.IsComplete())
|
||||
if (offer.IsComplete())
|
||||
{
|
||||
foreach (var rewarder in Resources.FindObjectsOfTypeAll<RancherProgressAwarder>())
|
||||
{
|
||||
|
@ -482,7 +482,7 @@ namespace SRMultiplayer.Networking
|
|||
{
|
||||
if (SRSingleton<SceneContext>.Instance.GameModel.AllGadgetSites().TryGetValue(packet.ID, out GadgetSiteModel model))
|
||||
{
|
||||
if(model.HasAttached())
|
||||
if (model.HasAttached())
|
||||
{
|
||||
model.attached.transform.GetComponent<DroneGadget>().drone.ammo.MaybeAddToSpecificSlot((Identifiable.Id)packet.Ident, null, 0, 1);
|
||||
}
|
||||
|
@ -497,7 +497,7 @@ namespace SRMultiplayer.Networking
|
|||
if (Globals.GadgetSites.TryGetValue(packet.ID, out NetworkGadgetSite netSite))
|
||||
{
|
||||
var echoNet = netSite.Site.GetComponentInChildren<EchoNet>(true);
|
||||
if(echoNet != null)
|
||||
if (echoNet != null)
|
||||
{
|
||||
echoNet.ResetSpawnTime(echoNet.model);
|
||||
}
|
||||
|
@ -510,7 +510,7 @@ namespace SRMultiplayer.Networking
|
|||
if (Globals.GadgetSites.TryGetValue(packet.ID, out NetworkGadgetSite netSite))
|
||||
{
|
||||
var snare = netSite.Site.GetComponentInChildren<GordoSnare>(true);
|
||||
if(snare != null)
|
||||
if (snare != null)
|
||||
{
|
||||
if (!snare.IsBaited() || snare.HasSnaredGordo())
|
||||
{
|
||||
|
@ -579,7 +579,7 @@ namespace SRMultiplayer.Networking
|
|||
{
|
||||
Globals.GadgetSites.TryGetValue(packet.ID, out NetworkGadgetSite netSite);
|
||||
bool didUnproxy = false;
|
||||
if(netSite != null)
|
||||
if (netSite != null)
|
||||
{
|
||||
if (!netSite.Region.Region.root.activeSelf)
|
||||
{
|
||||
|
@ -622,7 +622,7 @@ namespace SRMultiplayer.Networking
|
|||
foreach (var data in packet.Amounts)
|
||||
{
|
||||
SRSingleton<SceneContext>.Instance.GameModel.GetGadgetsModel().craftMatCounts[(Identifiable.Id)data.Key] -= data.Value;
|
||||
if(SRSingleton<SceneContext>.Instance.GameModel.GetGadgetsModel().craftMatCounts[(Identifiable.Id)data.Key] < 0)
|
||||
if (SRSingleton<SceneContext>.Instance.GameModel.GetGadgetsModel().craftMatCounts[(Identifiable.Id)data.Key] < 0)
|
||||
{
|
||||
SRSingleton<SceneContext>.Instance.GameModel.GetGadgetsModel().craftMatCounts[(Identifiable.Id)data.Key] = 0;
|
||||
}
|
||||
|
@ -720,7 +720,7 @@ namespace SRMultiplayer.Networking
|
|||
if (attachFashions != null)
|
||||
{
|
||||
var component = SRSingleton<GameContext>.Instance.LookupDirector.GetPrefab((Identifiable.Id)packet.Fashion)?.GetComponent<Fashion>();
|
||||
if(component != null)
|
||||
if (component != null)
|
||||
{
|
||||
attachFashions.Attach(component, !attachFashions.gameObject.activeInHierarchy);
|
||||
}
|
||||
|
@ -821,17 +821,17 @@ namespace SRMultiplayer.Networking
|
|||
|
||||
private static void OnWorldDecorizer(PacketWorldDecorizer packet, NetworkPlayer player)
|
||||
{
|
||||
foreach(var c in packet.Contents)
|
||||
foreach (var c in packet.Contents)
|
||||
{
|
||||
for(int i = 0; i < c.Value; i++)
|
||||
for (int i = 0; i < c.Value; i++)
|
||||
{
|
||||
SRSingleton<SceneContext>.Instance.GameModel.decorizer.contents.Increment(c.Key);
|
||||
}
|
||||
}
|
||||
foreach(var setting in packet.Settings)
|
||||
foreach (var setting in packet.Settings)
|
||||
{
|
||||
var storage = SRSingleton<SceneContext>.Instance.GameModel.decorizer.participants.FirstOrDefault(c => ((DecorizerStorage)c).id == setting.Key);
|
||||
if(storage != null)
|
||||
if (storage != null)
|
||||
{
|
||||
((DecorizerStorage)storage).selected = (Identifiable.Id)setting.Value;
|
||||
}
|
||||
|
@ -952,7 +952,7 @@ namespace SRMultiplayer.Networking
|
|||
if (SRSingleton<SceneContext>.Instance.GameModel.AllLandPlots().TryGetValue(packet.ID, out LandPlotModel model))
|
||||
{
|
||||
var incinerate = model.gameObj.GetComponentInChildren<Incinerate>();
|
||||
if(incinerate != null)
|
||||
if (incinerate != null)
|
||||
{
|
||||
SRBehaviour.SpawnAndPlayFX(incinerate.ExplosionFX, packet.Position, packet.Rotation);
|
||||
if (packet.Small)
|
||||
|
@ -976,7 +976,7 @@ namespace SRMultiplayer.Networking
|
|||
|
||||
private static void OnGlobalFX(PacketGlobalFX packet, NetworkPlayer player)
|
||||
{
|
||||
if(Globals.FXPrefabs.TryGetValue(packet.Name, out GameObject prefabFX))
|
||||
if (Globals.FXPrefabs.TryGetValue(packet.Name, out GameObject prefabFX))
|
||||
{
|
||||
SRBehaviour.SpawnAndPlayFX(prefabFX, packet.Position, Quaternion.identity);
|
||||
}
|
||||
|
@ -1080,7 +1080,7 @@ namespace SRMultiplayer.Networking
|
|||
if (SRSingleton<SceneContext>.Instance.GameModel.AllLandPlots().TryGetValue(packet.ID, out LandPlotModel model))
|
||||
{
|
||||
var collector = model.gameObj.GetComponentInChildren<PlortCollector>();
|
||||
if(collector != null)
|
||||
if (collector != null)
|
||||
{
|
||||
collector.StartCollection();
|
||||
}
|
||||
|
@ -1268,14 +1268,14 @@ namespace SRMultiplayer.Networking
|
|||
|
||||
private static void OnRegionOwner(PacketRegionOwner packet, NetworkPlayer player)
|
||||
{
|
||||
if(Globals.Regions.TryGetValue(packet.ID, out NetworkRegion netRegion))
|
||||
if (Globals.Regions.TryGetValue(packet.ID, out NetworkRegion netRegion))
|
||||
{
|
||||
if(packet.Owner == 0 && netRegion.Owner == player.ID)
|
||||
if (packet.Owner == 0 && netRegion.Owner == player.ID)
|
||||
{
|
||||
netRegion.SetOwnership(0);
|
||||
packet.SendToAll();
|
||||
}
|
||||
else if(packet.Owner != 0 && netRegion.Owner == 0)
|
||||
else if (packet.Owner != 0 && netRegion.Owner == 0)
|
||||
{
|
||||
netRegion.SetOwnership(packet.Owner);
|
||||
packet.SendToAll();
|
||||
|
@ -1338,7 +1338,7 @@ namespace SRMultiplayer.Networking
|
|||
var slimeFeral = netActor.GetComponentInChildren<SlimeFeral>(true);
|
||||
if (slimeFeral != null)
|
||||
{
|
||||
if(packet.Feral)
|
||||
if (packet.Feral)
|
||||
{
|
||||
slimeFeral.MakeFeral();
|
||||
}
|
||||
|
@ -1384,7 +1384,7 @@ namespace SRMultiplayer.Networking
|
|||
if (Globals.Actors.TryGetValue(packet.ID, out NetworkActor netActor))
|
||||
{
|
||||
var cycle = netActor.GetComponentInChildren<ResourceCycle>(true);
|
||||
if(cycle != null)
|
||||
if (cycle != null)
|
||||
{
|
||||
var state = (ResourceCycle.State)packet.State;
|
||||
//SRMP.Log($"Resource state for {netActor.name} ({netActor.ID}): {state}", "SERVER");
|
||||
|
@ -1401,7 +1401,7 @@ namespace SRMultiplayer.Networking
|
|||
}
|
||||
TweenUtil.ScaleTo(cycle.gameObject, cycle.defaultScale, 4f, Ease.InOutQuad);
|
||||
}
|
||||
else if(state == ResourceCycle.State.EDIBLE)
|
||||
else if (state == ResourceCycle.State.EDIBLE)
|
||||
{
|
||||
cycle.MakeEdible();
|
||||
cycle.additionalRipenessDelegate = null;
|
||||
|
@ -1427,7 +1427,7 @@ namespace SRMultiplayer.Networking
|
|||
cycle.vacuumable.Pending = false;
|
||||
}
|
||||
}
|
||||
else if(state == ResourceCycle.State.ROTTEN)
|
||||
else if (state == ResourceCycle.State.ROTTEN)
|
||||
{
|
||||
cycle.Rot();
|
||||
cycle.SetRotten(!cycle.gameObject.activeInHierarchy);
|
||||
|
@ -1525,7 +1525,7 @@ namespace SRMultiplayer.Networking
|
|||
netActor.KnownPlayers.AddRange(Globals.Players.Values.Where(p => p.HasLoaded));
|
||||
|
||||
var resourceCycle = actorObj.GetComponentInChildren<ResourceCycle>(true);
|
||||
if(resourceCycle != null)
|
||||
if (resourceCycle != null)
|
||||
{
|
||||
resourceCycle.SetInitState(ResourceCycle.State.UNRIPE, double.MaxValue);
|
||||
}
|
||||
|
@ -1574,7 +1574,7 @@ namespace SRMultiplayer.Networking
|
|||
private static void OnPlayerCurrencyDisplay(PacketPlayerCurrencyDisplay packet, NetworkPlayer player)
|
||||
{
|
||||
SRSingleton<SceneContext>.Instance.PlayerState.SetCurrencyDisplay(packet.IsNull ? null : new int?(packet.Currency));
|
||||
if(packet.IsNull)
|
||||
if (packet.IsNull)
|
||||
{
|
||||
SRSingleton<PopupElementsUI>.Instance.CreateCoinsPopup(packet.Currency, PlayerState.CoinsType.DRONE);
|
||||
}
|
||||
|
@ -1657,7 +1657,7 @@ namespace SRMultiplayer.Networking
|
|||
|
||||
private static void OnPlayerAnimationLayer(NetIncomingMessage im, NetworkPlayer player)
|
||||
{
|
||||
if(player.HasLoaded)
|
||||
if (player.HasLoaded)
|
||||
{
|
||||
byte id = im.ReadByte();
|
||||
player.ReadAnimatorLayer(im);
|
||||
|
@ -1707,7 +1707,7 @@ namespace SRMultiplayer.Networking
|
|||
Contents = SRSingleton<SceneContext>.Instance.GameModel.decorizer.contents.ToDictionary(c => c.Key, v => v.Value),
|
||||
Settings = SRSingleton<SceneContext>.Instance.GameModel.decorizer.settings.ToDictionary(s => s.Key, v => (ushort)v.Value.selected)
|
||||
}.Send(player, NetDeliveryMethod.ReliableOrdered);
|
||||
|
||||
|
||||
new PacketLandplots()
|
||||
{
|
||||
LandPlots = Globals.LandPlots.Values.Where(l => l.Plot.model != null).Select(l => new PacketLandplots.LandPlotData() { ID = l.Location.id, Model = l.Plot.model }).ToList()
|
||||
|
|
|
@ -74,20 +74,20 @@
|
|||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="0Harmony">
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\0Harmony.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\0Harmony.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Assembly-CSharp_publicized">
|
||||
<HintPath>..\Libs\Assembly-CSharp_publicized.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DOTween">
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\DOTween.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\DOTween.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="InControl">
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\InControl.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\InControl.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\Newtonsoft.Json.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SRML, Version=0.1.8.2, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
|
@ -103,46 +103,46 @@
|
|||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="Unity.TextMeshPro">
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\Unity.TextMeshPro.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\Unity.TextMeshPro.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityCoreMod, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\UnityCoreMod.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\UnityCoreMod.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine">
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\UnityEngine.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\UnityEngine.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.AnimationModule">
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\UnityEngine.AnimationModule.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\UnityEngine.AnimationModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.AssetBundleModule">
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\UnityEngine.AssetBundleModule.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\UnityEngine.AssetBundleModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.CoreModule">
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\UnityEngine.CoreModule.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\UnityEngine.CoreModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.IMGUIModule">
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\UnityEngine.IMGUIModule.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\UnityEngine.IMGUIModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.InputLegacyModule">
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\UnityEngine.InputLegacyModule.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\UnityEngine.InputLegacyModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.PhysicsModule">
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\UnityEngine.PhysicsModule.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\UnityEngine.PhysicsModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TextCoreModule, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\UnityEngine.TextCoreModule.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\UnityEngine.TextCoreModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TextRenderingModule, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\UnityEngine.TextRenderingModule.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\UnityEngine.TextRenderingModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UI">
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\UnityEngine.UI.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\UnityEngine.UI.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UIModule">
|
||||
<HintPath>C:\Program Files (x86)\Steam\steamapps\common\Slime Rancher\SlimeRancher_Data\Managed\UnityEngine.UIModule.dll</HintPath>
|
||||
<HintPath>C:\Program Files\Epic Games\SlimeRancher\SlimeRancher_Data\Managed\UnityEngine.UIModule.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
|
|
Loading…
Reference in a new issue