Skip to content

Commit

Permalink
Merge pull request #310 from misternebula/dev
Browse files Browse the repository at this point in the history
0.12.0
  • Loading branch information
misternebula authored Oct 25, 2021
2 parents 2d8ee30 + 65b4cc2 commit b369923
Show file tree
Hide file tree
Showing 297 changed files with 9,771 additions and 3,469 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -361,6 +361,7 @@ QSB.csproj.user
GameAssets/
Chert/
Riebeck/
IgnoreInGithub/
OWML.Config.json
WeavedFiles/QSB.dll
WeavedFiles/QSB.dll.mdb
Binary file modified AssetBundles/conversation
Binary file not shown.
15 changes: 8 additions & 7 deletions AssetBundles/conversation.manifest
Original file line number Diff line number Diff line change
@@ -1,24 +1,24 @@
ManifestFileVersion: 0
CRC: 3469869292
CRC: 1518538429
Hashes:
AssetFileHash:
serializedVersion: 2
Hash: 55d90dfc169d4fd552679840c1474222
Hash: cda9c91e090f27b94734bfca3a7cb9e2
TypeTreeHash:
serializedVersion: 2
Hash: 6ce89620af51ba381c9e4f226a2ebb1b
Hash: 90db08ff16f71e0f4005d38a4650eff2
HashAppended: 0
ClassTypes:
- Class: 1
Script: {instanceID: 0}
- Class: 114
Script: {fileID: 1741964061, guid: f70555f144d8491a825f0804e09c671c, type: 3}
Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
- Class: 114
Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3}
Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
- Class: 114
Script: {fileID: -900027084, guid: f70555f144d8491a825f0804e09c671c, type: 3}
Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3}
- Class: 114
Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3}
Script: {fileID: 11500000, guid: e19747de3f5aca642ab2be37e372fb86, type: 3}
- Class: 115
Script: {instanceID: 0}
- Class: 222
Expand All @@ -27,6 +27,7 @@ ClassTypes:
Script: {instanceID: 0}
- Class: 224
Script: {instanceID: 0}
SerializeReferenceClassIdentifiers: []
Assets:
- Assets/DialogueBubble.prefab
Dependencies: []
Binary file modified AssetBundles/debug
Binary file not shown.
23 changes: 18 additions & 5 deletions AssetBundles/debug.manifest
Original file line number Diff line number Diff line change
@@ -1,26 +1,34 @@
ManifestFileVersion: 0
CRC: 2815158869
CRC: 3095198160
Hashes:
AssetFileHash:
serializedVersion: 2
Hash: 81bbcd8775249928cc67d7ff90ff9047
Hash: aeeeeba83ed0a32973e863d3787067c0
TypeTreeHash:
serializedVersion: 2
Hash: 4d6a73cb377370ba69c96eb5da1b5028
Hash: b2ece8ae09df261ff59d764d08696641
HashAppended: 0
ClassTypes:
- Class: 1
Script: {instanceID: 0}
- Class: 4
Script: {instanceID: 0}
- Class: 21
Script: {instanceID: 0}
- Class: 23
Script: {instanceID: 0}
- Class: 28
Script: {instanceID: 0}
- Class: 33
Script: {instanceID: 0}
- Class: 43
Script: {instanceID: 0}
- Class: 48
Script: {instanceID: 0}
- Class: 114
Script: {fileID: 1980459831, guid: f70555f144d8491a825f0804e09c671c, type: 3}
Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
- Class: 114
Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3}
Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
- Class: 115
Script: {instanceID: 0}
- Class: 128
Expand All @@ -31,6 +39,11 @@ ClassTypes:
Script: {instanceID: 0}
- Class: 224
Script: {instanceID: 0}
SerializeReferenceClassIdentifiers: []
Assets:
- Assets/Cube.prefab
- Assets/Capsule.prefab
- Assets/DebugVis.mat
- Assets/LogCanvas.prefab
- Assets/Sphere.prefab
Dependencies: []
Binary file modified AssetBundles/network
Binary file not shown.
17 changes: 8 additions & 9 deletions AssetBundles/network.manifest
Original file line number Diff line number Diff line change
@@ -1,31 +1,30 @@
ManifestFileVersion: 0
CRC: 3669040473
CRC: 1991351671
Hashes:
AssetFileHash:
serializedVersion: 2
Hash: 102cbe12b50dffef59e4f393401b86ab
Hash: 494875ba5d9a67b7d87421e95e386357
TypeTreeHash:
serializedVersion: 2
Hash: 8b6abf066340f652e25eed06e6b72102
Hash: 6968c5d2bbef57a79632abd61ea01bb3
HashAppended: 0
ClassTypes:
- Class: 1
Script: {instanceID: 0}
- Class: 4
Script: {instanceID: 0}
- Class: 114
Script: {fileID: 372142912, guid: dc443db3e92b4983b9738c1131f555cb, type: 3}
Script: {fileID: 372142912, guid: 93b08009869340045a8e7321508b6355, type: 3}
- Class: 114
Script: {fileID: -1768714887, guid: dc443db3e92b4983b9738c1131f555cb, type: 3}
Script: {fileID: -1768714887, guid: 93b08009869340045a8e7321508b6355, type: 3}
- Class: 114
Script: {fileID: -1267208747, guid: dc443db3e92b4983b9738c1131f555cb, type: 3}
Script: {fileID: -1267208747, guid: 93b08009869340045a8e7321508b6355, type: 3}
- Class: 115
Script: {instanceID: 0}
SerializeReferenceClassIdentifiers: []
Assets:
- Assets/NetworkStickPivot.prefab
- Assets/NetworkPlayer.prefab
- Assets/NetworkCameraRoot.prefab
- Assets/NetworkProbe.prefab
- Assets/NETWORK_Player_Body.prefab
- Assets/NetworkOrb.prefab
- Assets/NetworkShip.prefab
Dependencies: []
15 changes: 15 additions & 0 deletions QNetWeaver/Helpers.cs
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ public static ISymbolReaderProvider GetSymbolReaderProvider(string inputFile)
Console.WriteLine("No symbols for " + inputFile);
result = null;
}

return result;
}

Expand All @@ -48,6 +49,7 @@ public static bool InheritsFromSyncList(TypeReference typeRef)
{
return false;
}

foreach (var typeReference in ResolveInheritanceHierarchy(typeRef))
{
if (typeReference.IsGenericInstance)
Expand All @@ -63,6 +65,7 @@ public static bool InheritsFromSyncList(TypeReference typeRef)
catch
{
}

return false;
}

Expand All @@ -75,6 +78,7 @@ public static IEnumerable<TypeReference> ResolveInheritanceHierarchy(TypeReferen
yield return Weaver.objectType;
yield break;
}

while (type != null && type.FullName != Weaver.objectType.FullName)
{
yield return type;
Expand All @@ -85,13 +89,15 @@ public static IEnumerable<TypeReference> ResolveInheritanceHierarchy(TypeReferen
{
break;
}

type = typeDefinition.BaseType;
}
catch
{
break;
}
}

yield return Weaver.objectType;
yield break;
}
Expand Down Expand Up @@ -122,6 +128,7 @@ public static string PrettyPrintType(TypeReference type)
{
result = type.Name;
}

return result;
}

Expand All @@ -132,6 +139,7 @@ public static ReaderParameters ReaderParameters(string assemblyPath, IEnumerable
{
assemblyResolver = new DefaultAssemblyResolver();
}

var addSearchDirectoryHelper = new Helpers.AddSearchDirectoryHelper(assemblyResolver);
addSearchDirectoryHelper.AddSearchDirectory(Path.GetDirectoryName(assemblyPath));
addSearchDirectoryHelper.AddSearchDirectory(UnityEngineDLLDirectoryName());
Expand All @@ -144,6 +152,7 @@ public static ReaderParameters ReaderParameters(string assemblyPath, IEnumerable
addSearchDirectoryHelper.AddSearchDirectory(directory);
}
}

readerParameters.AssemblyResolver = assemblyResolver;
readerParameters.SymbolReaderProvider = GetSymbolReaderProvider(assemblyPath);
return readerParameters;
Expand All @@ -160,6 +169,7 @@ public static WriterParameters GetWriterParameters(ReaderParameters readParams)
{
writerParameters.SymbolWriterProvider = new MdbWriterProvider();
}

return writerParameters;
}

Expand All @@ -169,11 +179,13 @@ public static TypeReference MakeGenericType(TypeReference self, params TypeRefer
{
throw new ArgumentException();
}

var genericInstanceType = new GenericInstanceType(self);
foreach (var item in arguments)
{
genericInstanceType.GenericArguments.Add(item);
}

return genericInstanceType;
}

Expand All @@ -189,10 +201,12 @@ public static MethodReference MakeHostInstanceGeneric(MethodReference self, para
{
methodReference.Parameters.Add(new ParameterDefinition(parameterDefinition.ParameterType));
}

foreach (var genericParameter in self.GenericParameters)
{
methodReference.GenericParameters.Add(new GenericParameter(genericParameter.Name, methodReference));
}

return methodReference;
}

Expand All @@ -208,6 +222,7 @@ public AddSearchDirectoryHelper(IAssemblyResolver assemblyResolver)
{
throw new Exception("Assembly resolver doesn't implement AddSearchDirectory method.");
}

_addSearchDirectory = (Helpers.AddSearchDirectoryHelper.AddSearchDirectoryDelegate)Delegate.CreateDelegate(typeof(Helpers.AddSearchDirectoryHelper.AddSearchDirectoryDelegate), assemblyResolver, method);
}

Expand Down
9 changes: 9 additions & 0 deletions QNetWeaver/MessageClassProcessor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ private void GenerateSerialization()
return;
}
}

if (m_td.Fields.Count != 0)
{
foreach (var fieldDefinition in m_td.Fields)
Expand All @@ -52,6 +53,7 @@ private void GenerateSerialization()
return;
}
}

var methodDefinition2 = new MethodDefinition("Serialize", MethodAttributes.FamANDAssem | MethodAttributes.Family | MethodAttributes.Virtual | MethodAttributes.HideBySig, Weaver.voidType);
methodDefinition2.Parameters.Add(new ParameterDefinition("writer", ParameterAttributes.None, Weaver.scriptDef.MainModule.ImportReference(Weaver.NetworkWriterType)));
var ilprocessor = methodDefinition2.Body.GetILProcessor();
Expand All @@ -74,6 +76,7 @@ private void GenerateSerialization()
}));
return;
}

if (fieldDefinition2.FieldType.Resolve().IsInterface)
{
Weaver.fail = true;
Expand All @@ -89,6 +92,7 @@ private void GenerateSerialization()
}));
return;
}

var writeFunc = Weaver.GetWriteFunc(fieldDefinition2.FieldType);
if (writeFunc == null)
{
Expand All @@ -105,12 +109,14 @@ private void GenerateSerialization()
}));
return;
}

ilprocessor.Append(ilprocessor.Create(OpCodes.Ldarg_1));
ilprocessor.Append(ilprocessor.Create(OpCodes.Ldarg_0));
ilprocessor.Append(ilprocessor.Create(OpCodes.Ldfld, fieldDefinition2));
ilprocessor.Append(ilprocessor.Create(OpCodes.Call, writeFunc));
}
}

ilprocessor.Append(ilprocessor.Create(OpCodes.Ret));
m_td.Methods.Add(methodDefinition2);
}
Expand All @@ -126,6 +132,7 @@ private void GenerateDeSerialization()
return;
}
}

if (m_td.Fields.Count != 0)
{
var methodDefinition2 = new MethodDefinition("Deserialize", MethodAttributes.FamANDAssem | MethodAttributes.Family | MethodAttributes.Virtual | MethodAttributes.HideBySig, Weaver.voidType);
Expand All @@ -149,12 +156,14 @@ private void GenerateDeSerialization()
}));
return;
}

ilprocessor.Append(ilprocessor.Create(OpCodes.Ldarg_0));
ilprocessor.Append(ilprocessor.Create(OpCodes.Ldarg_1));
ilprocessor.Append(ilprocessor.Create(OpCodes.Call, readFunc));
ilprocessor.Append(ilprocessor.Create(OpCodes.Stfld, fieldDefinition));
}
}

ilprocessor.Append(ilprocessor.Create(OpCodes.Ret));
m_td.Methods.Add(methodDefinition2);
}
Expand Down
4 changes: 4 additions & 0 deletions QNetWeaver/MonoBehaviourProcessor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ private void ProcessSyncVars()
Weaver.fail = true;
}
}

if (Helpers.InheritsFromSyncList(fieldDefinition.FieldType))
{
Log.Error(string.Format("Script {0} defines field {1} with type {2}, but it's not a NetworkBehaviour", m_td.FullName, fieldDefinition.Name, Helpers.PrettyPrintType(fieldDefinition.FieldType)));
Expand All @@ -57,6 +58,7 @@ private void ProcessMethods()
}));
Weaver.fail = true;
}

if (customAttribute.AttributeType.FullName == Weaver.ClientRpcType.FullName)
{
Log.Error(string.Concat(new string[]
Expand All @@ -69,6 +71,7 @@ private void ProcessMethods()
}));
Weaver.fail = true;
}

if (customAttribute.AttributeType.FullName == Weaver.TargetRpcType.FullName)
{
Log.Error(string.Concat(new string[]
Expand All @@ -81,6 +84,7 @@ private void ProcessMethods()
}));
Weaver.fail = true;
}

var text = customAttribute.Constructor.DeclaringType.ToString();
if (text == "UnityEngine.Networking.ServerAttribute")
{
Expand Down
Loading

0 comments on commit b369923

Please sign in to comment.