Commit Graph

1537 Commits

Author SHA1 Message Date
MrGadget
b8bcd9ad25
fix: Add missing channelId to NetworkConnectionToClient.Send calls (#1509)
* fix: Add missing channelId to NetworkConnectionToClient.Send calls

* Updated ChangeLog

* Added braces

* Found one more
2020-02-20 09:51:03 +01:00
MrGadget
61fdd892d9
fix: return & continue on separate line (#1504)
* fix: return & continue on separate line

* Update Assets/Mirror/Runtime/Transport/Telepathy/Server.cs
2020-02-17 16:48:41 +01:00
MrGadget
ecc0659b87
feat: Check for client authority in NetworkAnimator Cmd's (#1501) 2020-02-15 16:18:01 +01:00
MrGadget
8b359ff6d0
feat: Check for client authority in CmdClientToServerSync (#1500) 2020-02-15 08:33:14 +01:00
MrGadget
7bb80e3b79
feat: NetworkSceneChecker use Scene instead of string name (#1496)
* NetworkSceneChecker use Scene instead of string name

* Added comment
2020-02-15 08:32:34 +01:00
MrGadget
4c4a52bff9
fix: Host Player Ready Race Condition (#1498) 2020-02-15 08:32:12 +01:00
Chris Langsenkamp
1662c5a139 fix: Fixed NetworkRoomManager Template 2020-02-14 00:45:04 -05:00
Chris Langsenkamp
853e5ab7d7 Simplified Additive example code 2020-02-12 20:09:37 -05:00
Chris Langsenkamp
e467921377 fixed obsolete comment 2020-02-11 11:55:22 -05:00
Chris Langsenkamp
79708d94a2 breaking: bump version to 10 2020-02-11 09:39:06 -05:00
MrGadget
0e80e1996f
feat: Block Play Mode and Builds for Weaver Errors (#1479)
* WIP first draft

* Much closer now

* Whoop! There it is!

* Added comment

* Restore Player

* Moved WeaveFailed back where it was

* Restore delegate wireup

* Moved the delegate wireup and added comments

* Formatted comment and error message

* Added comment

* Use a separate session bool

* Code formatting

* Delete Mirror.Editor.asmdef

* Add Debug

* No WeaveExistingAssemblies

* Revert "No WeaveExistingAssemblies"

This reverts commit 50d4790ee4.

* Revert "Add Debug"

This reverts commit 185b403361.

* Revert "Delete Mirror.Editor.asmdef"

This reverts commit f7647cce3f.

* Update Assets/Mirror/Editor/Mirror.Editor.asmdef

* Update Assets/Mirror/Editor/Mirror.Editor.asmdef

* reverted changes to Mirror.Editor.asmdef

* Re-applied change to Mirror.Editor.asmdef

* commented Debug line
2020-02-10 23:23:34 +01:00
MrGadget
bb55baa679
feat: Disposable PooledNetworkReader / PooledNetworkWriter (#1490)
* Inherit IDisposable

* using NetworkWriter from pool

* Remove Recycles

* Add comments to Recycle

* Add comments to Recycle

* using NetworkReader from pool

* Unity doesn't like the simplified form

* combined usings

* Updated Reader / Writer Tests

* wip

* Disposable NetworkReaderPool:NetworkReader

* uncomment NetworkDiagnostics.OnReceive

* Removed unnecessary constructor

* Implemented NetworkWriterPool : NetworkWriter

* code cleanup

* Separated classes: PooledNetworkReader / PooledNetworkWriter

* Removed blank line

* Update Assets/Mirror/Tests/Editor/NetworkReaderTest.cs

* Test restored

Co-authored-by: Paul Pacheco <paulpach@gmail.com>
2020-02-10 22:26:55 +01:00
Chris Langsenkamp
436d8fe831 fixed xml comment 2020-02-10 16:18:11 -05:00
Chris Langsenkamp
745aea8f9a Added Deprecated dates to Obsoletes 2020-02-10 16:14:22 -05:00
Paul Pacheco
0f10c72744
feat: supports scriptable objects (#1471)
* feat: supports scriptable objects

Now you can pass scriptable objects in commands, rpcs and syncvars
For example:

```cs
class Weapon: ScriptableObject
{
    public string name;
    public string description;
    public int damage;
    ...
}

class Player : NetworkBehaviour
{

    [SyncVar]
    Weapon equipped;

    ...
}
```

Scriptable objects will be created in the client using
ScriptableObject.CreateInstance.  If users want something else
they can provide a custom serializer (that has not changed)

* fix: remove scriptableobject error Tests

The test that checks that scrscriptableobjects give error is no
longer valid
2020-02-09 20:16:13 +01:00
Chris Langsenkamp
ab6a03b9fa remove SerializeField attribute 2020-02-08 21:08:38 -05:00
Chris Langsenkamp
831db2f033 Updated comments 2020-02-08 21:07:39 -05:00
Chris Langsenkamp
6431c28a12 OnEnable is safer than Awake 2020-02-08 21:02:22 -05:00
MrGadget
90d92fc0cf
Add headless check to Discovery (#1485) 2020-02-07 12:13:09 +01:00
vis2k
9f7c30c1ac
fix #1475: isClient is true in OnDestroy on host/client mode again. Reverts commit d00c95bb55 (#1483)
* fix #1475: isClient is true in OnDestroy on host/client mode again. Reverts commit d00c95bb55

* add comment

* ClientScene.InternalAddPlayer doesn't need to set isClient anymore
2020-02-07 10:14:54 +01:00
Chris Langsenkamp
c06ea6b6c8 Fix comment 2020-02-06 11:51:38 -05:00
vis2k
3568dc356c NetworkIdentityTests: HostMode isLocalPlayer check added 2020-02-06 13:16:13 +01:00
vis2k
85e9a0aa13 NetworkIdentityTests: HostMode isServer/isClient/isLocalPlayer test added 2020-02-06 12:42:19 +01:00
vis2k
09ec344821 NetworkIdentityTests: OnStartServer isServer/isClient/isLocalPlayer test added 2020-02-06 12:36:36 +01:00
MrGadget
58df3fd6d6
feat: Added Read<T> Method to NetworkReader (#1480)
* Added Read<T> Method

* Renamed to ReadMessage
2020-02-06 11:39:39 +01:00
MrGadget
02e4245f3d
BREAKING: Rename NetworkWriter Write<T>to WriteMessage (#1482) 2020-02-06 11:38:54 +01:00
Chris Langsenkamp
1c58891e32 Formatted comment and error message 2020-02-05 10:29:49 -05:00
Chris Langsenkamp
86a2c6f52c Added comments for WeaveFailed 2020-02-05 10:15:09 -05:00
Chris Langsenkamp
4108b79340 Code cleanup 2020-02-05 00:53:14 -05:00
Chris Langsenkamp
34fc52bd50 Added empty AddComponent attribute 2020-02-04 15:05:57 -05:00
Chris Langsenkamp
c7e269d0c5 Removed extraneous comment 2020-02-04 14:55:42 -05:00
vis2k
f614bc8f3a Icon updated for transparent border 2020-02-04 20:53:48 +01:00
Paul Pacheco
36980f4a34
Refactor: Rename method to avoid confussion (#1477) 2020-02-03 10:00:58 -06:00
Paul Pacheco
d0b0bc92bc
fix: weaver support array of custom types (#1470)
* WIP

* Proposed Rearrange

* Rearrange Code

* Unit test for PR

* unit test

* unit test

* Update TestingScriptableObjectArraySerialization.cs

Improving code

* Update TestingScriptableObjectArraySerialization.cs

* Remove blank lines

* remove blank space

* Remove leftover log

Co-authored-by: MrGadget <chris@clevertech.net>
Co-authored-by: Uchiha I_A_H_I <jkaran.sharma101@gmail.com>
2020-02-03 14:00:37 +01:00
Paul Pacheco
1736bb0c42
fix: call callback after update dictionary in host (#1476)
When the callback for SyncDictionary is called in the server
for set or add
it is getting called before the syncdictionary is updated.

In the client this happens after.  

Example:

```cs
   public void OnScoreUpdatedCallback(ScoreSyncDict.Operation op, uint ident, int score) 
   {
       if (op == ScoreSyncDict.Operation.OP_SET) 
              Debug.Log($"The value in the dictionary is {scoreDict[ident]}");
   }
```

In host mode this prints the previous value.   In client mode this prints the current value.  This PR fixes this problem and makes both print the current value
2020-02-02 20:29:31 -06:00
Chris Langsenkamp
c2e7466c43 Updated Preprocessor defines 2020-02-02 15:18:49 -05:00
Chris Langsenkamp
c827216a66 Restructured prefabs in examples 2020-02-02 14:55:49 -05:00
MrGadget
eee969201d
Renamed localEulerAnglesSensitivity (#1474)
BREAKING CHANGE:  localEulerAnglesSensitivity renamed to localRotationSensitivity
2020-02-02 13:35:07 -06:00
Chris Langsenkamp
8816ce5d03 Add headers for inspector 2020-02-02 13:53:25 -05:00
MrGadget
7c1b5ab5f8
Add Header to NetworkBehaviourInspector (#1473) 2020-02-02 13:40:30 -05:00
MrGadget
9257112c65
feat: Implemented NetworkReaderPool (#1464)
* Implement NetworkReaderPool

* Reset Position

* Debug logging removed

* SetBuffer methods internal

* Edited comment
2020-02-01 14:05:09 +01:00
Chris Langsenkamp
d0e493ac92 Updated ScriptTemplates 2020-01-31 21:25:38 -05:00
Chris Langsenkamp
a28ccbb477 Allow Room Manager Additional GamePlay Scenes 2020-01-31 21:18:01 -05:00
Chris Langsenkamp
1433d369c8 Applied Mirror Icon to Discovery components 2020-01-30 15:40:23 -05:00
MrGadget
28212aa8d7
Message Tests (#1463)
* Added UpdateVarsMessageTest

* commit staged

* Added SpawnMessageTest

* Delete MessageTests.cs

* Updated SpawnMessageTest

* Updated SpawnMessageTest

* Updated SpawnMessageTest

* Added RemovePlayerMessageTest

* Added ReadyMessageTest

* Added ObjectSpawnStartedMessageTest

* Added ObjectSpawnFinishedMessageTest

* Added ObjectHideMessageTest

* Added ObjectDestroyMessageTest

* Added NotReadyMessageTest

* Added DisconnectMessageTest

* Added ConnectMessageTest

* Added NetworkPingMessageTest

* Updated NetworkPingMessageTest

* Added NetworkPongMessageTest

* Updated ErrorMessageTest

* Tests in alphabetic order
2020-01-30 09:42:05 +01:00
MrGadget
e44ca7f334
BasicAuthenticatorTest (#1459)
* First Draft

* Second Draft

* Third Draft

* First 2 tests that work
2020-01-29 20:44:30 +01:00
vis2k
93a9eb8339 Disable two telepathy tests that sometimes fail in Unity's mono version 2020-01-29 20:29:21 +01:00
vis2k
d0d77b661c fix: Telepathy reverted to older version to fix freezes when calling Client.Disconnect on some platforms like Windows 10 2020-01-29 20:20:18 +01:00
Paul Pacheco
e75b45f888
feat: LAN Network discovery (#1453)
* Fix typo

* Updated Changelog

* first commit

* Add example for discovery

* NetworkDiscovery component should be added

* fixed UI

* Fix some warnings

* refactor: network discovery reimplemented

* Remove unused GUIstyle

* Fix namespaces

* Just send to the broadcast address

* Fix indentation

* Log errors in ClientListen

* Code formatting cleanup, HelpURL's fixed, comments revised. (#38)

* Transport can now provide server uri

* work with any transport by passing uri

* Move discovery initialization to start

* feat: Discovery can now be easily customized per game

* Use generics to simplify api

* Renamed ServerInfo -> ServerResponse

* Rename method

* Moved up one folder

* Move ServerId to NetworkDiscovery

* tests now reference Mirror.Discovery

* Cleaned up blank space

* Disable GUID apparently fixes it

* Use UnityEvents for ease of use

* Remove noisy log

* remove blank spaces

* Process request receives the client endpoint

* use consistent name for parameters

* Remove white space

* Keep it minimalistic,  we don't need age or totalPlayers

* Comment non obvious property

* Don't break transports

* Documentation and image

* Code formatting

* removed privates

* Added Range attribute

* Rename ActiveDiscoverySecondInterval

* Revised NetworkDiscovery doc

* Swapped field order (Cosmetics)

* Added ScriptTemplate

* Update ProjectSettings/ProjectVersion.txt

* Updated ScriptTemplate

* Updated xml comment and ScriptTemplate

* Updated ScriptTemplate

* Improve xmldocs

* Improve xmldocs

* Remove leftover comment

* Renamed event

* Moved discovery inside components

* Keep parameter names consistent

* Provide a guide for network discovery

* XML Comments and ScriptTemplate

* Moved Credits

* fixed template

* Removed comment

* removed comment

* xml comments and template

* fixed method name

* fixed method and template

* removed semicolon

* fixed template

* fixed method and template

* fixed template

* fixed template

* Fix copypasta error

* Show error if no url is available

Network Discovery now shows an error if the transport does not support
providing Url

* Grammar fix

* Extended Template

* fixed template

* Added guide link to template

* New image

* Update NetworkDiscovery.md

* Updated Guid Doc and Template

* fixed bullets

* Remove unnecessary using

* Make it like Mirror's

* Update ScriptTemplates Image & Zip

* Removed from Deprecations

* Updated ChangeLog

* Updated ChangeLog

* Update NetworkDiscovery.md

Remove last line...this was copied to the paragraph above the code block

Co-authored-by: MrGadget <chris@clevertech.net>
2020-01-29 09:56:29 +01:00
MrGadget
9621b0bd30
Update PreprocessorDefines (#1456)
* Update PreprocessorDefines

* Removed 8

* Update PreprocessorDefine.cs
2020-01-29 09:53:39 +01:00