[Add] FishNet

This commit is contained in:
2026-03-30 20:11:57 +07:00
parent ee793a3361
commit c22c08753a
1797 changed files with 197950 additions and 1 deletions
@@ -0,0 +1,31 @@
using FishNet.Connection;
using UnityEngine.SceneManagement;
namespace FishNet.Managing.Scened
{
/// <summary>
/// Data container about a scene presence change for a client.
/// </summary>
public struct ClientPresenceChangeEventArgs
{
/// <summary>
/// Scene on the server which the client's presence has changed.
/// </summary>
public Scene Scene;
/// <summary>
/// Connection to client.
/// </summary>
public NetworkConnection Connection;
/// <summary>
/// True if the client was added to the scene, false is removed.
/// </summary>
public bool Added;
internal ClientPresenceChangeEventArgs(Scene scene, NetworkConnection conn, bool added)
{
Scene = scene;
Connection = conn;
Added = added;
}
}
}
@@ -0,0 +1,18 @@
fileFormatVersion: 2
guid: fa91039d4ab1c6445af72881af122b0a
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 207815
packageName: 'FishNet: Networking Evolved'
packageVersion: 4.6.22R
assetPath: Assets/FishNet/Runtime/Managing/Scened/Events/ClientPresenceChangeEventArgs.cs
uploadId: 866910
@@ -0,0 +1,73 @@
using System.Collections.Generic;
using UnityEngine.SceneManagement;
namespace FishNet.Managing.Scened
{
/// <summary>
/// Data container about a scene load start.
/// </summary>
public struct SceneLoadStartEventArgs
{
/// <summary>
/// Queue data used by the current scene action.
/// </summary>
public readonly LoadQueueData QueueData;
internal SceneLoadStartEventArgs(LoadQueueData lqd)
{
QueueData = lqd;
}
}
/// <summary>
/// Data container about a scene load percent change.
/// </summary>
public struct SceneLoadPercentEventArgs
{
/// <summary>
/// Queue data used by the current scene action.
/// </summary>
public readonly LoadQueueData QueueData;
/// <summary>
/// Percentage of change completion. 1f is equal to 100% complete.
/// </summary>
public readonly float Percent;
internal SceneLoadPercentEventArgs(LoadQueueData lqd, float percent)
{
QueueData = lqd;
Percent = percent;
}
}
/// <summary>
/// Data container about a scene load end.
/// </summary>
public struct SceneLoadEndEventArgs
{
/// <summary>
/// Queue data used by the current scene action.
/// </summary>
public readonly LoadQueueData QueueData;
/// <summary>
/// Scenes which were loaded.
/// </summary>
public readonly Scene[] LoadedScenes;
/// <summary>
/// Scenes which were skipped because they were already loaded.
/// </summary>
public readonly string[] SkippedSceneNames;
/// <summary>
/// Scenes which were unloaded.
/// </summary>
public readonly string[] UnloadedSceneNames;
internal SceneLoadEndEventArgs(LoadQueueData lqd, string[] skipped, Scene[] loaded, string[] unloadedSceneNames)
{
QueueData = lqd;
SkippedSceneNames = skipped;
LoadedScenes = loaded;
UnloadedSceneNames = unloadedSceneNames;
}
}
}
@@ -0,0 +1,18 @@
fileFormatVersion: 2
guid: 86278568f8087de49b0908f148501993
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 207815
packageName: 'FishNet: Networking Evolved'
packageVersion: 4.6.22R
assetPath: Assets/FishNet/Runtime/Managing/Scened/Events/LoadSceneEventArgs.cs
uploadId: 866910
@@ -0,0 +1,53 @@
using System;
using System.Collections.Generic;
using UnityEngine.SceneManagement;
namespace FishNet.Managing.Scened
{
/// <summary>
/// Data container about a scene unload start.
/// </summary>
public struct SceneUnloadStartEventArgs
{
/// <summary>
/// Queue data used by the current scene action.
/// </summary>
public readonly UnloadQueueData QueueData;
internal SceneUnloadStartEventArgs(UnloadQueueData sqd)
{
QueueData = sqd;
}
}
/// <summary>
/// Data container about a scene unload end.
/// </summary>
public struct SceneUnloadEndEventArgs
{
/// <summary>
/// Queue data used by the current scene action.
/// </summary>
public readonly UnloadQueueData QueueData;
/// <summary>
/// Scenes which were successfully unloaded.
/// This collection may be populated with empty scenes depending on engine version.
/// </summary>
[Obsolete("Use UnloadedScenesV2.")] // Remove on V5. Rename UnloadedScenesV2 to UnloadedScenes.
public List<Scene> UnloadedScenes;
/// <summary>
/// Scenes which were successfully unloaded.
/// This contains information of the scene unloaded but may not contain scene references as some Unity versions discard that information after a scene is unloaded.
/// </summary>
public List<UnloadedScene> UnloadedScenesV2;
internal SceneUnloadEndEventArgs(UnloadQueueData sqd, List<Scene> unloadedScenes, List<UnloadedScene> newUnloadedScenes)
{
QueueData = sqd;
#pragma warning disable CS0618 // Type or member is obsolete
UnloadedScenes = unloadedScenes;
#pragma warning restore CS0618 // Type or member is obsolete
UnloadedScenesV2 = newUnloadedScenes;
}
}
}
@@ -0,0 +1,18 @@
fileFormatVersion: 2
guid: 2c24765fea85b564aa331b529f324f92
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 207815
packageName: 'FishNet: Networking Evolved'
packageVersion: 4.6.22R
assetPath: Assets/FishNet/Runtime/Managing/Scened/Events/UnloadSceneEventArgs.cs
uploadId: 866910