Merge pull request #6309 from aws-lumberyard-dev/LYN-6769_TestingRPCs
Multiplayer AR Testing RPCs
This commit is contained in:
+5
-5
@@ -19,8 +19,8 @@
|
||||
|
||||
<RemoteProcedure Name="AutonomousToAuthorityNoParams" InvokeFrom="Autonomous" HandleOn="Authority" IsPublic="false" IsReliable="false" GenerateEventBindings="true" Description="" />
|
||||
|
||||
<RemoteProcedure Name="AuthorityToAutonomous" InvokeFrom="Authority" HandleOn="Autonomous" IsPublic="false" IsReliable="false" GenerateEventBindings="true" Description="" >
|
||||
<Param Type="float" Name="SomeFloat" />
|
||||
<RemoteProcedure Name="AuthorityToAutonomous_PlayerNumber" InvokeFrom="Authority" HandleOn="Autonomous" IsPublic="false" IsReliable="true" GenerateEventBindings="true" Description="" >
|
||||
<Param Type="int" Name="player_number" />
|
||||
</RemoteProcedure>
|
||||
|
||||
<RemoteProcedure Name="AuthorityToAutonomousNoParams" InvokeFrom="Authority" HandleOn="Autonomous" IsPublic="false" IsReliable="false" GenerateEventBindings="true" Description="" />
|
||||
@@ -29,10 +29,10 @@
|
||||
<Param Type="float" Name="SomeFloat" />
|
||||
</RemoteProcedure>
|
||||
|
||||
<RemoteProcedure Name="AuthorityToClientNoParams" InvokeFrom="Authority" HandleOn="Client" IsPublic="false" IsReliable="false" GenerateEventBindings="true" Description="" />
|
||||
<RemoteProcedure Name="AuthorityToClientNoParams_PlayFx" InvokeFrom="Authority" HandleOn="Client" IsPublic="false" IsReliable="true" GenerateEventBindings="true" Description="" />
|
||||
|
||||
<RemoteProcedure Name="ServerToAuthority" InvokeFrom="Server" HandleOn="Authority" IsPublic="false" IsReliable="false" GenerateEventBindings="true" Description="" >
|
||||
<Param Type="float" Name="SomeFloat" />
|
||||
<RemoteProcedure Name="ServerToAuthority_DealDamage" InvokeFrom="Server" HandleOn="Authority" IsPublic="false" IsReliable="true" GenerateEventBindings="true" Description="" >
|
||||
<Param Type="float" Name="damage" />
|
||||
</RemoteProcedure>
|
||||
|
||||
<RemoteProcedure Name="ServerToAuthorityNoParam" InvokeFrom="Server" HandleOn="Authority" IsPublic="false" IsReliable="false" GenerateEventBindings="true" Description="" />
|
||||
|
||||
+49
-23
@@ -100,6 +100,49 @@ class TestHelper:
|
||||
TestHelper.wait_for_condition(lambda : general.is_in_game_mode(), 1.0)
|
||||
Report.critical_result(msgtuple_success_fail, general.is_in_game_mode())
|
||||
|
||||
@staticmethod
|
||||
def find_line(window, line, print_infos):
|
||||
"""
|
||||
Looks for an expected line in a list of tracer log lines
|
||||
:param window: The log's window name. For example, logs printed via script-canvas use the "Script" window.
|
||||
:param line: The log message to search for.
|
||||
:param print_infos: A list of PrintInfos collected by Tracer to search. Example options: your_tracer.warnings, your_tracer.errors, your_tracer.asserts, or your_tracer.prints
|
||||
|
||||
:return: True if the line is found, otherwise false.
|
||||
"""
|
||||
for printInfo in print_infos:
|
||||
if printInfo.window == window.strip() and printInfo.message.strip() == line:
|
||||
return True
|
||||
return False
|
||||
|
||||
@staticmethod
|
||||
def succeed_if_log_line_found(window, line, print_infos, time_out):
|
||||
"""
|
||||
Looks for a line in a list of tracer log lines and reports success if found.
|
||||
:param window: The log's window name. For example, logs printed via script-canvas use the "Script" window.
|
||||
:param line: The log message we're hoping to find.
|
||||
:param print_infos: A list of PrintInfos collected by Tracer to search. Example options: your_tracer.warnings, your_tracer.errors, your_tracer.asserts, or your_tracer.prints
|
||||
:param time_out: The total amount of time to wait before giving up looking for the expected line.
|
||||
|
||||
:return: No return value, but if the message is found, a successful critical result is reported; otherwise failure.
|
||||
"""
|
||||
TestHelper.wait_for_condition(lambda : TestHelper.find_line(window, line, print_infos), time_out)
|
||||
Report.critical_result(("Found expected line: " + line, "Failed to find expected line: " + line), TestHelper.find_line(window, line, print_infos))
|
||||
|
||||
@staticmethod
|
||||
def fail_if_log_line_found(window, line, print_infos, time_out):
|
||||
"""
|
||||
Reports a failure if a log line in a list of tracer log lines is found.
|
||||
:param window: The log's window name. For example, logs printed via script-canvas use the "Script" window.
|
||||
:param line: The log message we're hoping to not find.
|
||||
:param print_infos: A list of PrintInfos collected by Tracer to search. Example options: your_tracer.warnings, your_tracer.errors, your_tracer.asserts, or your_tracer.prints
|
||||
:param time_out: The total amount of time to wait before giving up looking for the unexpected line. If time runs out and we don't see the unexpected line then report a success.
|
||||
|
||||
:return: No return value, but if the line is found, a failed critical result is reported; otherwise success.
|
||||
"""
|
||||
TestHelper.wait_for_condition(lambda : TestHelper.find_line(window, line, print_infos), time_out)
|
||||
Report.critical_result(("Unexpected line not found: " + line, "Unexpected line found: " + line), not TestHelper.find_line(window, line, print_infos))
|
||||
|
||||
@staticmethod
|
||||
def multiplayer_enter_game_mode(msgtuple_success_fail: Tuple[str, str], sv_default_player_spawn_asset: str) -> None:
|
||||
"""
|
||||
@@ -108,23 +151,6 @@ class TestHelper:
|
||||
|
||||
:return: None
|
||||
"""
|
||||
|
||||
# looks for an expected line in a list of tracers lines
|
||||
# lines: the tracer list of lines to search. options are section_tracer.warnings, section_tracer.errors, section_tracer.asserts, section_tracer.prints
|
||||
# return: true if the line is found, otherwise false
|
||||
def find_expected_line(expected_line, lines):
|
||||
found_lines = [printInfo.message.strip() for printInfo in lines]
|
||||
return expected_line in found_lines
|
||||
|
||||
def wait_for_critical_expected_line(expected_line, lines, time_out):
|
||||
TestHelper.wait_for_condition(lambda : find_expected_line(expected_line, lines), time_out)
|
||||
Report.critical_result(("Found expected line: " + expected_line, "Failed to find expected line: " + expected_line), find_expected_line(expected_line, lines))
|
||||
|
||||
def wait_for_critical_unexpected_line(unexpected_line, lines, time_out):
|
||||
TestHelper.wait_for_condition(lambda : find_expected_line(unexpected_line, lines), time_out)
|
||||
Report.critical_result(("Unexpected line not found: " + unexpected_line, "Unexpected line found: " + unexpected_line), not find_expected_line(unexpected_line, lines))
|
||||
|
||||
|
||||
Report.info("Entering game mode")
|
||||
if sv_default_player_spawn_asset :
|
||||
general.set_cvar("sv_defaultPlayerSpawnAsset", sv_default_player_spawn_asset)
|
||||
@@ -135,20 +161,20 @@ class TestHelper:
|
||||
multiplayer.PythonEditorFuncs_enter_game_mode()
|
||||
|
||||
# make sure the server launcher binary exists
|
||||
wait_for_critical_unexpected_line("LaunchEditorServer failed! The ServerLauncher binary is missing!", section_tracer.errors, 0.5)
|
||||
TestHelper.fail_if_log_line_found("MultiplayerEditor", "LaunchEditorServer failed! The ServerLauncher binary is missing!", section_tracer.errors, 0.5)
|
||||
|
||||
# make sure the server launcher is running
|
||||
waiter.wait_for(lambda: process_utils.process_exists("AutomatedTesting.ServerLauncher", ignore_extensions=True), timeout=5.0, exc=AssertionError("AutomatedTesting.ServerLauncher has NOT launched!"), interval=1.0)
|
||||
|
||||
wait_for_critical_expected_line("MultiplayerEditorConnection: Editor-server activation has found and connected to the editor.", section_tracer.prints, 15.0)
|
||||
TestHelper.succeed_if_log_line_found("EditorServer", "MultiplayerEditorConnection: Editor-server activation has found and connected to the editor.", section_tracer.prints, 15.0)
|
||||
|
||||
wait_for_critical_expected_line("Editor is sending the editor-server the level data packet.", section_tracer.prints, 5.0)
|
||||
TestHelper.succeed_if_log_line_found("MultiplayerEditor", "Editor is sending the editor-server the level data packet.", section_tracer.prints, 5.0)
|
||||
|
||||
wait_for_critical_expected_line("Logger: Editor Server completed receiving the editor's level assets, responding to Editor...", section_tracer.prints, 5.0)
|
||||
TestHelper.succeed_if_log_line_found("EditorServer", "Logger: Editor Server completed receiving the editor's level assets, responding to Editor...", section_tracer.prints, 5.0)
|
||||
|
||||
wait_for_critical_expected_line("Editor-server ready. Editor has successfully connected to the editor-server's network simulation.", section_tracer.prints, 5.0)
|
||||
TestHelper.succeed_if_log_line_found("MultiplayerEditorConnection", "Editor-server ready. Editor has successfully connected to the editor-server's network simulation.", section_tracer.prints, 5.0)
|
||||
|
||||
wait_for_critical_unexpected_line(f"MultiplayerSystemComponent: SpawnDefaultPlayerPrefab failed. Missing sv_defaultPlayerSpawnAsset at path '{sv_default_player_spawn_asset.lower()}'.", section_tracer.prints, 0.5)
|
||||
TestHelper.fail_if_log_line_found("EditorServer", f"MultiplayerSystemComponent: SpawnDefaultPlayerPrefab failed. Missing sv_defaultPlayerSpawnAsset at path '{sv_default_player_spawn_asset.lower()}'.", section_tracer.prints, 0.5)
|
||||
|
||||
TestHelper.wait_for_condition(lambda : multiplayer.PythonEditorFuncs_is_in_game_mode(), 5.0)
|
||||
Report.critical_result(msgtuple_success_fail, multiplayer.PythonEditorFuncs_is_in_game_mode())
|
||||
|
||||
@@ -32,3 +32,6 @@ class TestAutomation(TestAutomationBase):
|
||||
from .tests import Multiplayer_AutoComponent_NetworkInput as test_module
|
||||
self._run_prefab_test(request, workspace, editor, test_module)
|
||||
|
||||
def test_Multiplayer_AutoComponent_RPC(self, request, workspace, editor, launcher_platform):
|
||||
from .tests import Multiplayer_AutoComponent_RPC as test_module
|
||||
self._run_prefab_test(request, workspace, editor, test_module)
|
||||
|
||||
@@ -0,0 +1,83 @@
|
||||
"""
|
||||
Copyright (c) Contributors to the Open 3D Engine Project.
|
||||
For complete copyright and license terms please see the LICENSE at the root of this distribution.
|
||||
|
||||
SPDX-License-Identifier: Apache-2.0 OR MIT
|
||||
"""
|
||||
|
||||
|
||||
# Test Case Title : Check that the four network RPCs can be sent and received
|
||||
|
||||
|
||||
# fmt: off
|
||||
class TestSuccessFailTuples():
|
||||
enter_game_mode = ("Entered game mode", "Failed to enter game mode")
|
||||
exit_game_mode = ("Exited game mode", "Couldn't exit game mode")
|
||||
find_network_player = ("Found network player", "Couldn't find network player")
|
||||
# fmt: on
|
||||
|
||||
|
||||
def Multiplayer_AutoComponent_RPC():
|
||||
r"""
|
||||
Summary:
|
||||
Runs a test to make sure that RPCs can be sent and received via script canvas
|
||||
|
||||
Level Description:
|
||||
- Dynamic
|
||||
1. Although the level is nearly empty, when the server and editor connect the server will spawn and replicate the player network prefab.
|
||||
a. The player network prefab has a NetworkTestPlayerComponent.AutoComponent and a script canvas attached which sends and receives various RPCs.
|
||||
Print logs occur upon sending and receiving the RPCs; we are testing to make sure the expected events and values are received.
|
||||
- Static
|
||||
1. NetLevelEntity. This is a networked entity which has a script attached. Used for cross-entity communication. The net-player prefab will send this level entity Server->Authority RPCs
|
||||
|
||||
|
||||
Expected Outcome:
|
||||
We should see editor logs stating that RPCs have been sent and received.
|
||||
However, if the script receives unexpected values for the Process event we will see print logs for bad data as well.
|
||||
|
||||
:return:
|
||||
"""
|
||||
import azlmbr.legacy.general as general
|
||||
from editor_python_test_tools.utils import Report
|
||||
from editor_python_test_tools.utils import Tracer
|
||||
|
||||
from editor_python_test_tools.utils import TestHelper as helper
|
||||
from ly_remote_console.remote_console_commands import RemoteConsole as RemoteConsole
|
||||
|
||||
level_name = "AutoComponent_RPC"
|
||||
player_prefab_name = "Player"
|
||||
player_prefab_path = f"levels/multiplayer/{level_name}/{player_prefab_name}.network.spawnable"
|
||||
|
||||
helper.init_idle()
|
||||
|
||||
# 1) Open Level
|
||||
helper.open_level("Multiplayer", level_name)
|
||||
|
||||
with Tracer() as section_tracer:
|
||||
# 2) Enter game mode
|
||||
helper.multiplayer_enter_game_mode(TestSuccessFailTuples.enter_game_mode, player_prefab_path.lower())
|
||||
|
||||
# 3) Make sure the network player was spawned
|
||||
player_id = general.find_game_entity(player_prefab_name)
|
||||
Report.critical_result(TestSuccessFailTuples.find_network_player, player_id.IsValid())
|
||||
|
||||
# 4) Check the editor logs for expected and unexpected log output
|
||||
PLAYERID_RPC_WAIT_TIME_SECONDS = 1.0 # The player id is sent from the server as soon as the player script is spawned. 1 second should be more than enough time to send/receive that RPC.
|
||||
helper.succeed_if_log_line_found('EditorServer', 'Script: AutoComponent_RPC: Sending client PlayerNumber 1', section_tracer.prints, PLAYERID_RPC_WAIT_TIME_SECONDS)
|
||||
helper.succeed_if_log_line_found('Script', "AutoComponent_RPC: I'm Player #1", section_tracer.prints, PLAYERID_RPC_WAIT_TIME_SECONDS)
|
||||
|
||||
# Uncomment once editor game-play mode supports level entities with net-binding
|
||||
#PLAYFX_RPC_WAIT_TIME_SECONDS = 1.1 # The server will send an RPC to play an fx on the client every second.
|
||||
#helper.succeed_if_log_line_found('EditorServer', "Script: AutoComponent_RPC_NetLevelEntity Activated on entity: NetLevelEntity", section_tracer.prints, PLAYFX_RPC_WAIT_TIME_SECONDS)
|
||||
#helper.succeed_if_log_line_found('EditorServer', "Script: AutoComponent_RPC_NetLevelEntity: Authority sending RPC to play some fx.", section_tracer.prints, PLAYFX_RPC_WAIT_TIME_SECONDS)
|
||||
#helper.succeed_if_log_line_found('Script', "AutoComponent_RPC_NetLevelEntity: I'm a client playing some superficial fx.", section_tracer.prints, PLAYFX_RPC_WAIT_TIME_SECONDS)
|
||||
|
||||
|
||||
# Exit game mode
|
||||
helper.exit_game_mode(TestSuccessFailTuples.exit_game_mode)
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
from editor_python_test_tools.utils import Report
|
||||
Report.start_test(Multiplayer_AutoComponent_RPC)
|
||||
@@ -0,0 +1,747 @@
|
||||
{
|
||||
"ContainerEntity": {
|
||||
"Id": "Entity_[1146574390643]",
|
||||
"Name": "Level",
|
||||
"Components": {
|
||||
"Component_[10641544592923449938]": {
|
||||
"$type": "EditorInspectorComponent",
|
||||
"Id": 10641544592923449938
|
||||
},
|
||||
"Component_[12039882709170782873]": {
|
||||
"$type": "EditorOnlyEntityComponent",
|
||||
"Id": 12039882709170782873
|
||||
},
|
||||
"Component_[12265484671603697631]": {
|
||||
"$type": "EditorPendingCompositionComponent",
|
||||
"Id": 12265484671603697631
|
||||
},
|
||||
"Component_[14126657869720434043]": {
|
||||
"$type": "EditorEntitySortComponent",
|
||||
"Id": 14126657869720434043,
|
||||
"Child Entity Order": [
|
||||
"Entity_[1176639161715]",
|
||||
"Entity_[12685882829720]",
|
||||
"Entity_[31145534614197]"
|
||||
]
|
||||
},
|
||||
"Component_[15230859088967841193]": {
|
||||
"$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
|
||||
"Id": 15230859088967841193,
|
||||
"Parent Entity": ""
|
||||
},
|
||||
"Component_[16239496886950819870]": {
|
||||
"$type": "EditorDisabledCompositionComponent",
|
||||
"Id": 16239496886950819870
|
||||
},
|
||||
"Component_[5688118765544765547]": {
|
||||
"$type": "EditorEntityIconComponent",
|
||||
"Id": 5688118765544765547
|
||||
},
|
||||
"Component_[6545738857812235305]": {
|
||||
"$type": "SelectionComponent",
|
||||
"Id": 6545738857812235305
|
||||
},
|
||||
"Component_[7247035804068349658]": {
|
||||
"$type": "EditorPrefabComponent",
|
||||
"Id": 7247035804068349658
|
||||
},
|
||||
"Component_[9307224322037797205]": {
|
||||
"$type": "EditorLockComponent",
|
||||
"Id": 9307224322037797205
|
||||
},
|
||||
"Component_[9562516168917670048]": {
|
||||
"$type": "EditorVisibilityComponent",
|
||||
"Id": 9562516168917670048
|
||||
}
|
||||
}
|
||||
},
|
||||
"Entities": {
|
||||
"Entity_[1155164325235]": {
|
||||
"Id": "Entity_[1155164325235]",
|
||||
"Name": "Sun",
|
||||
"Components": {
|
||||
"Component_[10440557478882592717]": {
|
||||
"$type": "SelectionComponent",
|
||||
"Id": 10440557478882592717
|
||||
},
|
||||
"Component_[13620450453324765907]": {
|
||||
"$type": "EditorLockComponent",
|
||||
"Id": 13620450453324765907
|
||||
},
|
||||
"Component_[2134313378593666258]": {
|
||||
"$type": "EditorInspectorComponent",
|
||||
"Id": 2134313378593666258
|
||||
},
|
||||
"Component_[234010807770404186]": {
|
||||
"$type": "EditorVisibilityComponent",
|
||||
"Id": 234010807770404186
|
||||
},
|
||||
"Component_[2970359110423865725]": {
|
||||
"$type": "EditorEntityIconComponent",
|
||||
"Id": 2970359110423865725
|
||||
},
|
||||
"Component_[3722854130373041803]": {
|
||||
"$type": "EditorOnlyEntityComponent",
|
||||
"Id": 3722854130373041803
|
||||
},
|
||||
"Component_[5992533738676323195]": {
|
||||
"$type": "EditorDisabledCompositionComponent",
|
||||
"Id": 5992533738676323195
|
||||
},
|
||||
"Component_[7378860763541895402]": {
|
||||
"$type": "AZ::Render::EditorDirectionalLightComponent",
|
||||
"Id": 7378860763541895402,
|
||||
"Controller": {
|
||||
"Configuration": {
|
||||
"Intensity": 1.0,
|
||||
"CameraEntityId": "",
|
||||
"ShadowFilterMethod": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"Component_[7892834440890947578]": {
|
||||
"$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
|
||||
"Id": 7892834440890947578,
|
||||
"Parent Entity": "Entity_[1176639161715]",
|
||||
"Transform Data": {
|
||||
"Translate": [
|
||||
0.0,
|
||||
0.0,
|
||||
13.487043380737305
|
||||
],
|
||||
"Rotate": [
|
||||
-76.13099670410156,
|
||||
-0.847000002861023,
|
||||
-15.8100004196167
|
||||
]
|
||||
}
|
||||
},
|
||||
"Component_[8599729549570828259]": {
|
||||
"$type": "EditorEntitySortComponent",
|
||||
"Id": 8599729549570828259
|
||||
},
|
||||
"Component_[952797371922080273]": {
|
||||
"$type": "EditorPendingCompositionComponent",
|
||||
"Id": 952797371922080273
|
||||
}
|
||||
}
|
||||
},
|
||||
"Entity_[1159459292531]": {
|
||||
"Id": "Entity_[1159459292531]",
|
||||
"Name": "Ground",
|
||||
"Components": {
|
||||
"Component_[11701138785793981042]": {
|
||||
"$type": "SelectionComponent",
|
||||
"Id": 11701138785793981042
|
||||
},
|
||||
"Component_[12260880513256986252]": {
|
||||
"$type": "EditorEntityIconComponent",
|
||||
"Id": 12260880513256986252
|
||||
},
|
||||
"Component_[13711420870643673468]": {
|
||||
"$type": "EditorDisabledCompositionComponent",
|
||||
"Id": 13711420870643673468
|
||||
},
|
||||
"Component_[138002849734991713]": {
|
||||
"$type": "EditorOnlyEntityComponent",
|
||||
"Id": 138002849734991713
|
||||
},
|
||||
"Component_[16578565737331764849]": {
|
||||
"$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
|
||||
"Id": 16578565737331764849,
|
||||
"Parent Entity": "Entity_[1176639161715]"
|
||||
},
|
||||
"Component_[16919232076966545697]": {
|
||||
"$type": "EditorInspectorComponent",
|
||||
"Id": 16919232076966545697
|
||||
},
|
||||
"Component_[5182430712893438093]": {
|
||||
"$type": "EditorMaterialComponent",
|
||||
"Id": 5182430712893438093
|
||||
},
|
||||
"Component_[5675108321710651991]": {
|
||||
"$type": "AZ::Render::EditorMeshComponent",
|
||||
"Id": 5675108321710651991,
|
||||
"Controller": {
|
||||
"Configuration": {
|
||||
"ModelAsset": {
|
||||
"assetId": {
|
||||
"guid": "{0CD745C0-6AA8-569A-A68A-73A3270986C4}",
|
||||
"subId": 277889906
|
||||
},
|
||||
"assetHint": "objects/groudplane/groundplane_512x512m.azmodel"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"Component_[5681893399601237518]": {
|
||||
"$type": "EditorEntitySortComponent",
|
||||
"Id": 5681893399601237518
|
||||
},
|
||||
"Component_[592692962543397545]": {
|
||||
"$type": "EditorPendingCompositionComponent",
|
||||
"Id": 592692962543397545
|
||||
},
|
||||
"Component_[7090012899106946164]": {
|
||||
"$type": "EditorLockComponent",
|
||||
"Id": 7090012899106946164
|
||||
},
|
||||
"Component_[9410832619875640998]": {
|
||||
"$type": "EditorVisibilityComponent",
|
||||
"Id": 9410832619875640998
|
||||
}
|
||||
}
|
||||
},
|
||||
"Entity_[1163754259827]": {
|
||||
"Id": "Entity_[1163754259827]",
|
||||
"Name": "Camera",
|
||||
"Components": {
|
||||
"Component_[11895140916889160460]": {
|
||||
"$type": "EditorEntityIconComponent",
|
||||
"Id": 11895140916889160460
|
||||
},
|
||||
"Component_[16880285896855930892]": {
|
||||
"$type": "{CA11DA46-29FF-4083-B5F6-E02C3A8C3A3D} EditorCameraComponent",
|
||||
"Id": 16880285896855930892,
|
||||
"Controller": {
|
||||
"Configuration": {
|
||||
"Field of View": 55.0,
|
||||
"EditorEntityId": 11050384689878106598
|
||||
}
|
||||
}
|
||||
},
|
||||
"Component_[17187464423780271193]": {
|
||||
"$type": "EditorLockComponent",
|
||||
"Id": 17187464423780271193
|
||||
},
|
||||
"Component_[17495696818315413311]": {
|
||||
"$type": "EditorEntitySortComponent",
|
||||
"Id": 17495696818315413311
|
||||
},
|
||||
"Component_[18086214374043522055]": {
|
||||
"$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
|
||||
"Id": 18086214374043522055,
|
||||
"Parent Entity": "Entity_[1176639161715]",
|
||||
"Transform Data": {
|
||||
"Translate": [
|
||||
-2.3000001907348633,
|
||||
-3.9368600845336914,
|
||||
1.0
|
||||
],
|
||||
"Rotate": [
|
||||
-2.050307512283325,
|
||||
1.9552897214889526,
|
||||
-43.623355865478516
|
||||
]
|
||||
}
|
||||
},
|
||||
"Component_[18387556550380114975]": {
|
||||
"$type": "SelectionComponent",
|
||||
"Id": 18387556550380114975
|
||||
},
|
||||
"Component_[2654521436129313160]": {
|
||||
"$type": "EditorVisibilityComponent",
|
||||
"Id": 2654521436129313160
|
||||
},
|
||||
"Component_[5265045084611556958]": {
|
||||
"$type": "EditorDisabledCompositionComponent",
|
||||
"Id": 5265045084611556958
|
||||
},
|
||||
"Component_[7169798125182238623]": {
|
||||
"$type": "EditorPendingCompositionComponent",
|
||||
"Id": 7169798125182238623
|
||||
},
|
||||
"Component_[7255796294953281766]": {
|
||||
"$type": "GenericComponentWrapper",
|
||||
"Id": 7255796294953281766,
|
||||
"m_template": {
|
||||
"$type": "FlyCameraInputComponent"
|
||||
}
|
||||
},
|
||||
"Component_[8866210352157164042]": {
|
||||
"$type": "EditorInspectorComponent",
|
||||
"Id": 8866210352157164042
|
||||
},
|
||||
"Component_[9129253381063760879]": {
|
||||
"$type": "EditorOnlyEntityComponent",
|
||||
"Id": 9129253381063760879
|
||||
}
|
||||
}
|
||||
},
|
||||
"Entity_[1168049227123]": {
|
||||
"Id": "Entity_[1168049227123]",
|
||||
"Name": "Grid",
|
||||
"Components": {
|
||||
"Component_[11443347433215807130]": {
|
||||
"$type": "EditorEntityIconComponent",
|
||||
"Id": 11443347433215807130
|
||||
},
|
||||
"Component_[11779275529534764488]": {
|
||||
"$type": "SelectionComponent",
|
||||
"Id": 11779275529534764488
|
||||
},
|
||||
"Component_[14249419413039427459]": {
|
||||
"$type": "EditorInspectorComponent",
|
||||
"Id": 14249419413039427459
|
||||
},
|
||||
"Component_[15448581635946161318]": {
|
||||
"$type": "AZ::Render::EditorGridComponent",
|
||||
"Id": 15448581635946161318,
|
||||
"Controller": {
|
||||
"Configuration": {
|
||||
"primarySpacing": 4.0,
|
||||
"primaryColor": [
|
||||
0.501960813999176,
|
||||
0.501960813999176,
|
||||
0.501960813999176
|
||||
],
|
||||
"secondarySpacing": 0.5,
|
||||
"secondaryColor": [
|
||||
0.250980406999588,
|
||||
0.250980406999588,
|
||||
0.250980406999588
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"Component_[1843303322527297409]": {
|
||||
"$type": "EditorDisabledCompositionComponent",
|
||||
"Id": 1843303322527297409
|
||||
},
|
||||
"Component_[380249072065273654]": {
|
||||
"$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
|
||||
"Id": 380249072065273654,
|
||||
"Parent Entity": "Entity_[1176639161715]"
|
||||
},
|
||||
"Component_[7476660583684339787]": {
|
||||
"$type": "EditorPendingCompositionComponent",
|
||||
"Id": 7476660583684339787
|
||||
},
|
||||
"Component_[7557626501215118375]": {
|
||||
"$type": "EditorEntitySortComponent",
|
||||
"Id": 7557626501215118375
|
||||
},
|
||||
"Component_[7984048488947365511]": {
|
||||
"$type": "EditorVisibilityComponent",
|
||||
"Id": 7984048488947365511
|
||||
},
|
||||
"Component_[8118181039276487398]": {
|
||||
"$type": "EditorOnlyEntityComponent",
|
||||
"Id": 8118181039276487398
|
||||
},
|
||||
"Component_[9189909764215270515]": {
|
||||
"$type": "EditorLockComponent",
|
||||
"Id": 9189909764215270515
|
||||
}
|
||||
}
|
||||
},
|
||||
"Entity_[1172344194419]": {
|
||||
"Id": "Entity_[1172344194419]",
|
||||
"Name": "Shader Ball",
|
||||
"Components": {
|
||||
"Component_[10789351944715265527]": {
|
||||
"$type": "EditorOnlyEntityComponent",
|
||||
"Id": 10789351944715265527
|
||||
},
|
||||
"Component_[12037033284781049225]": {
|
||||
"$type": "EditorEntitySortComponent",
|
||||
"Id": 12037033284781049225
|
||||
},
|
||||
"Component_[13759153306105970079]": {
|
||||
"$type": "EditorPendingCompositionComponent",
|
||||
"Id": 13759153306105970079
|
||||
},
|
||||
"Component_[14135560884830586279]": {
|
||||
"$type": "EditorInspectorComponent",
|
||||
"Id": 14135560884830586279
|
||||
},
|
||||
"Component_[16247165675903986673]": {
|
||||
"$type": "EditorVisibilityComponent",
|
||||
"Id": 16247165675903986673
|
||||
},
|
||||
"Component_[18082433625958885247]": {
|
||||
"$type": "EditorDisabledCompositionComponent",
|
||||
"Id": 18082433625958885247
|
||||
},
|
||||
"Component_[6472623349872972660]": {
|
||||
"$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
|
||||
"Id": 6472623349872972660,
|
||||
"Parent Entity": "Entity_[1176639161715]",
|
||||
"Transform Data": {
|
||||
"Rotate": [
|
||||
0.0,
|
||||
0.10000000149011612,
|
||||
180.0
|
||||
]
|
||||
}
|
||||
},
|
||||
"Component_[6495255223970673916]": {
|
||||
"$type": "AZ::Render::EditorMeshComponent",
|
||||
"Id": 6495255223970673916,
|
||||
"Controller": {
|
||||
"Configuration": {
|
||||
"ModelAsset": {
|
||||
"assetId": {
|
||||
"guid": "{FD340C30-755C-5911-92A3-19A3F7A77931}",
|
||||
"subId": 281415304
|
||||
},
|
||||
"assetHint": "objects/shaderball/shaderball_default_1m.azmodel"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"Component_[8056625192494070973]": {
|
||||
"$type": "SelectionComponent",
|
||||
"Id": 8056625192494070973
|
||||
},
|
||||
"Component_[8550141614185782969]": {
|
||||
"$type": "EditorEntityIconComponent",
|
||||
"Id": 8550141614185782969
|
||||
},
|
||||
"Component_[9439770997198325425]": {
|
||||
"$type": "EditorLockComponent",
|
||||
"Id": 9439770997198325425
|
||||
}
|
||||
}
|
||||
},
|
||||
"Entity_[1176639161715]": {
|
||||
"Id": "Entity_[1176639161715]",
|
||||
"Name": "Atom Default Environment",
|
||||
"Components": {
|
||||
"Component_[10757302973393310045]": {
|
||||
"$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
|
||||
"Id": 10757302973393310045,
|
||||
"Parent Entity": "Entity_[1146574390643]"
|
||||
},
|
||||
"Component_[14505817420424255464]": {
|
||||
"$type": "EditorInspectorComponent",
|
||||
"Id": 14505817420424255464,
|
||||
"ComponentOrderEntryArray": [
|
||||
{
|
||||
"ComponentId": 10757302973393310045
|
||||
}
|
||||
]
|
||||
},
|
||||
"Component_[14988041764659020032]": {
|
||||
"$type": "EditorLockComponent",
|
||||
"Id": 14988041764659020032
|
||||
},
|
||||
"Component_[15808690248755038124]": {
|
||||
"$type": "SelectionComponent",
|
||||
"Id": 15808690248755038124
|
||||
},
|
||||
"Component_[15900837685796817138]": {
|
||||
"$type": "EditorVisibilityComponent",
|
||||
"Id": 15900837685796817138
|
||||
},
|
||||
"Component_[3298767348226484884]": {
|
||||
"$type": "EditorOnlyEntityComponent",
|
||||
"Id": 3298767348226484884
|
||||
},
|
||||
"Component_[4076975109609220594]": {
|
||||
"$type": "EditorPendingCompositionComponent",
|
||||
"Id": 4076975109609220594
|
||||
},
|
||||
"Component_[5679760548946028854]": {
|
||||
"$type": "EditorDisabledCompositionComponent",
|
||||
"Id": 5679760548946028854
|
||||
},
|
||||
"Component_[5855590796136709437]": {
|
||||
"$type": "EditorEntitySortComponent",
|
||||
"Id": 5855590796136709437,
|
||||
"Child Entity Order": [
|
||||
"Entity_[1155164325235]",
|
||||
"Entity_[1180934129011]",
|
||||
"Entity_[1172344194419]",
|
||||
"Entity_[1168049227123]",
|
||||
"Entity_[1163754259827]",
|
||||
"Entity_[1159459292531]"
|
||||
]
|
||||
},
|
||||
"Component_[9277695270015777859]": {
|
||||
"$type": "EditorEntityIconComponent",
|
||||
"Id": 9277695270015777859
|
||||
}
|
||||
}
|
||||
},
|
||||
"Entity_[1180934129011]": {
|
||||
"Id": "Entity_[1180934129011]",
|
||||
"Name": "Global Sky",
|
||||
"Components": {
|
||||
"Component_[11231930600558681245]": {
|
||||
"$type": "AZ::Render::EditorHDRiSkyboxComponent",
|
||||
"Id": 11231930600558681245,
|
||||
"Controller": {
|
||||
"Configuration": {
|
||||
"CubemapAsset": {
|
||||
"assetId": {
|
||||
"guid": "{215E47FD-D181-5832-B1AB-91673ABF6399}",
|
||||
"subId": 1000
|
||||
},
|
||||
"assetHint": "lightingpresets/highcontrast/goegap_4k_skyboxcm.exr.streamingimage"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"Component_[11980494120202836095]": {
|
||||
"$type": "SelectionComponent",
|
||||
"Id": 11980494120202836095
|
||||
},
|
||||
"Component_[1428633914413949476]": {
|
||||
"$type": "EditorLockComponent",
|
||||
"Id": 1428633914413949476
|
||||
},
|
||||
"Component_[14936200426671614999]": {
|
||||
"$type": "AZ::Render::EditorImageBasedLightComponent",
|
||||
"Id": 14936200426671614999,
|
||||
"Controller": {
|
||||
"Configuration": {
|
||||
"diffuseImageAsset": {
|
||||
"assetId": {
|
||||
"guid": "{3FD09945-D0F2-55C8-B9AF-B2FD421FE3BE}",
|
||||
"subId": 3000
|
||||
},
|
||||
"assetHint": "lightingpresets/highcontrast/goegap_4k_iblglobalcm_ibldiffuse.exr.streamingimage"
|
||||
},
|
||||
"specularImageAsset": {
|
||||
"assetId": {
|
||||
"guid": "{3FD09945-D0F2-55C8-B9AF-B2FD421FE3BE}",
|
||||
"subId": 2000
|
||||
},
|
||||
"assetHint": "lightingpresets/highcontrast/goegap_4k_iblglobalcm_iblspecular.exr.streamingimage"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"Component_[14994774102579326069]": {
|
||||
"$type": "EditorDisabledCompositionComponent",
|
||||
"Id": 14994774102579326069
|
||||
},
|
||||
"Component_[15417479889044493340]": {
|
||||
"$type": "EditorPendingCompositionComponent",
|
||||
"Id": 15417479889044493340
|
||||
},
|
||||
"Component_[15826613364991382688]": {
|
||||
"$type": "EditorEntitySortComponent",
|
||||
"Id": 15826613364991382688
|
||||
},
|
||||
"Component_[1665003113283562343]": {
|
||||
"$type": "EditorOnlyEntityComponent",
|
||||
"Id": 1665003113283562343
|
||||
},
|
||||
"Component_[3704934735944502280]": {
|
||||
"$type": "EditorEntityIconComponent",
|
||||
"Id": 3704934735944502280
|
||||
},
|
||||
"Component_[5698542331457326479]": {
|
||||
"$type": "EditorVisibilityComponent",
|
||||
"Id": 5698542331457326479
|
||||
},
|
||||
"Component_[6644513399057217122]": {
|
||||
"$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
|
||||
"Id": 6644513399057217122,
|
||||
"Parent Entity": "Entity_[1176639161715]"
|
||||
},
|
||||
"Component_[931091830724002070]": {
|
||||
"$type": "EditorInspectorComponent",
|
||||
"Id": 931091830724002070
|
||||
}
|
||||
}
|
||||
},
|
||||
"Entity_[12685882829720]": {
|
||||
"Id": "Entity_[12685882829720]",
|
||||
"Name": "GlobalGameData",
|
||||
"Components": {
|
||||
"Component_[11240656689650225106]": {
|
||||
"$type": "EditorDisabledCompositionComponent",
|
||||
"Id": 11240656689650225106
|
||||
},
|
||||
"Component_[13863201640354873385]": {
|
||||
"$type": "EditorPendingCompositionComponent",
|
||||
"Id": 13863201640354873385
|
||||
},
|
||||
"Component_[14671754037021562789]": {
|
||||
"$type": "EditorInspectorComponent",
|
||||
"Id": 14671754037021562789
|
||||
},
|
||||
"Component_[14750978061505735417]": {
|
||||
"$type": "EditorScriptCanvasComponent",
|
||||
"Id": 14750978061505735417,
|
||||
"m_name": "GlobalGameData",
|
||||
"m_assetHolder": {
|
||||
"m_asset": {
|
||||
"assetId": {
|
||||
"guid": "{B16589A0-EA01-56BC-8141-91A3967FB95F}"
|
||||
},
|
||||
"assetHint": "levels/multiplayer/autocomponent_rpc/globalgamedata.scriptcanvas"
|
||||
}
|
||||
},
|
||||
"runtimeDataIsValid": true,
|
||||
"runtimeDataOverrides": {
|
||||
"source": {
|
||||
"assetId": {
|
||||
"guid": "{B16589A0-EA01-56BC-8141-91A3967FB95F}"
|
||||
},
|
||||
"assetHint": "levels/multiplayer/autocomponent_rpc/globalgamedata.scriptcanvas"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Component_[16436925042043744033]": {
|
||||
"$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
|
||||
"Id": 16436925042043744033,
|
||||
"Parent Entity": "Entity_[1146574390643]",
|
||||
"Transform Data": {
|
||||
"Translate": [
|
||||
0.0,
|
||||
0.10000038146972656,
|
||||
4.005393981933594
|
||||
]
|
||||
}
|
||||
},
|
||||
"Component_[16974524495698916088]": {
|
||||
"$type": "EditorOnlyEntityComponent",
|
||||
"Id": 16974524495698916088
|
||||
},
|
||||
"Component_[2753700837834389204]": {
|
||||
"$type": "EditorLockComponent",
|
||||
"Id": 2753700837834389204
|
||||
},
|
||||
"Component_[3766473509503096065]": {
|
||||
"$type": "SelectionComponent",
|
||||
"Id": 3766473509503096065
|
||||
},
|
||||
"Component_[4025955184206569130]": {
|
||||
"$type": "EditorEntitySortComponent",
|
||||
"Id": 4025955184206569130
|
||||
},
|
||||
"Component_[7909743395732791573]": {
|
||||
"$type": "EditorVisibilityComponent",
|
||||
"Id": 7909743395732791573
|
||||
},
|
||||
"Component_[9550161640684119498]": {
|
||||
"$type": "EditorEntityIconComponent",
|
||||
"Id": 9550161640684119498
|
||||
}
|
||||
}
|
||||
},
|
||||
"Entity_[31145534614197]": {
|
||||
"Id": "Entity_[31145534614197]",
|
||||
"Name": "NetLevelEntity",
|
||||
"Components": {
|
||||
"Component_[12132849363414901338]": {
|
||||
"$type": "EditorEntityIconComponent",
|
||||
"Id": 12132849363414901338
|
||||
},
|
||||
"Component_[12302672911455629152]": {
|
||||
"$type": "SelectionComponent",
|
||||
"Id": 12302672911455629152
|
||||
},
|
||||
"Component_[14169903623243423134]": {
|
||||
"$type": "EditorVisibilityComponent",
|
||||
"Id": 14169903623243423134
|
||||
},
|
||||
"Component_[14607413934411389854]": {
|
||||
"$type": "EditorInspectorComponent",
|
||||
"Id": 14607413934411389854
|
||||
},
|
||||
"Component_[15396284312416541768]": {
|
||||
"$type": "GenericComponentWrapper",
|
||||
"Id": 15396284312416541768,
|
||||
"m_template": {
|
||||
"$type": "Multiplayer::LocalPredictionPlayerInputComponent"
|
||||
}
|
||||
},
|
||||
"Component_[15494977028055234270]": {
|
||||
"$type": "EditorDisabledCompositionComponent",
|
||||
"Id": 15494977028055234270
|
||||
},
|
||||
"Component_[16325088972532345964]": {
|
||||
"$type": "EditorLockComponent",
|
||||
"Id": 16325088972532345964
|
||||
},
|
||||
"Component_[1986030426392465743]": {
|
||||
"$type": "EditorEntitySortComponent",
|
||||
"Id": 1986030426392465743
|
||||
},
|
||||
"Component_[4591476848838823508]": {
|
||||
"$type": "AZ::Render::EditorMeshComponent",
|
||||
"Id": 4591476848838823508,
|
||||
"Controller": {
|
||||
"Configuration": {
|
||||
"ModelAsset": {
|
||||
"assetId": {
|
||||
"guid": "{80FA8BAF-4A5B-5937-9679-2E592E841A3A}",
|
||||
"subId": 275306041
|
||||
},
|
||||
"assetHint": "assets/physics/collider_pxmeshautoassigned/spherebot/r0-b_body.azmodel"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"Component_[7256163899440301540]": {
|
||||
"$type": "EditorScriptCanvasComponent",
|
||||
"Id": 7256163899440301540,
|
||||
"m_name": "AutoComponent_RPC_NetLevelEntity",
|
||||
"m_assetHolder": {
|
||||
"m_asset": {
|
||||
"assetId": {
|
||||
"guid": "{1D517006-AC01-5ECA-AE66-0E007871F0CD}"
|
||||
},
|
||||
"assetHint": "levels/multiplayer/autocomponent_rpc/autocomponent_rpc_netlevelentity.scriptcanvas"
|
||||
}
|
||||
},
|
||||
"runtimeDataIsValid": true,
|
||||
"runtimeDataOverrides": {
|
||||
"source": {
|
||||
"assetId": {
|
||||
"guid": "{1D517006-AC01-5ECA-AE66-0E007871F0CD}"
|
||||
},
|
||||
"assetHint": "levels/multiplayer/autocomponent_rpc/autocomponent_rpc_netlevelentity.scriptcanvas"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Component_[731336627222243355]": {
|
||||
"$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
|
||||
"Id": 731336627222243355,
|
||||
"Parent Entity": "Entity_[1146574390643]",
|
||||
"Transform Data": {
|
||||
"Translate": [
|
||||
2.561863899230957,
|
||||
-1.038161277770996,
|
||||
0.1487259864807129
|
||||
]
|
||||
}
|
||||
},
|
||||
"Component_[8012379125499217348]": {
|
||||
"$type": "EditorPendingCompositionComponent",
|
||||
"Id": 8012379125499217348
|
||||
},
|
||||
"Component_[8122568562140740597]": {
|
||||
"$type": "GenericComponentWrapper",
|
||||
"Id": 8122568562140740597,
|
||||
"m_template": {
|
||||
"$type": "Multiplayer::NetworkTransformComponent"
|
||||
}
|
||||
},
|
||||
"Component_[8805228647591404845]": {
|
||||
"$type": "GenericComponentWrapper",
|
||||
"Id": 8805228647591404845,
|
||||
"m_template": {
|
||||
"$type": "NetBindComponent"
|
||||
}
|
||||
},
|
||||
"Component_[9816897251206708579]": {
|
||||
"$type": "GenericComponentWrapper",
|
||||
"Id": 9816897251206708579,
|
||||
"m_template": {
|
||||
"$type": "AutomatedTesting::NetworkTestPlayerComponent"
|
||||
}
|
||||
},
|
||||
"Component_[9880860858035405475]": {
|
||||
"$type": "EditorOnlyEntityComponent",
|
||||
"Id": 9880860858035405475
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+5019
File diff suppressed because it is too large
Load Diff
+1946
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,662 @@
|
||||
{
|
||||
"Type": "JsonSerialization",
|
||||
"Version": 1,
|
||||
"ClassName": "ScriptCanvasData",
|
||||
"ClassData": {
|
||||
"m_scriptCanvas": {
|
||||
"Id": {
|
||||
"id": 17732469402520
|
||||
},
|
||||
"Name": "Untitled-1",
|
||||
"Components": {
|
||||
"Component_[16492301523567686923]": {
|
||||
"$type": "{4D755CA9-AB92-462C-B24F-0B3376F19967} Graph",
|
||||
"Id": 16492301523567686923,
|
||||
"m_graphData": {
|
||||
"m_nodes": [
|
||||
{
|
||||
"Id": {
|
||||
"id": 17741059337112
|
||||
},
|
||||
"Name": "SC-Node(OperatorAdd)",
|
||||
"Components": {
|
||||
"Component_[11612963594766700030]": {
|
||||
"$type": "OperatorAdd",
|
||||
"Id": 11612963594766700030,
|
||||
"Slots": [
|
||||
{
|
||||
"id": {
|
||||
"m_id": "{B7529112-C29F-45F0-811C-DB8EE18EB8B8}"
|
||||
},
|
||||
"contracts": [
|
||||
{
|
||||
"$type": "SlotTypeContract"
|
||||
}
|
||||
],
|
||||
"slotName": "In",
|
||||
"Descriptor": {
|
||||
"ConnectionType": 1,
|
||||
"SlotType": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": {
|
||||
"m_id": "{49618851-F6B2-4B90-BFDF-ADBAAA84BBA4}"
|
||||
},
|
||||
"contracts": [
|
||||
{
|
||||
"$type": "SlotTypeContract"
|
||||
}
|
||||
],
|
||||
"slotName": "Out",
|
||||
"Descriptor": {
|
||||
"ConnectionType": 2,
|
||||
"SlotType": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": {
|
||||
"m_id": "{4612C904-82DF-4B48-8485-4C878AF9A4D1}"
|
||||
},
|
||||
"DynamicTypeOverride": 3,
|
||||
"contracts": [
|
||||
{
|
||||
"$type": "SlotTypeContract"
|
||||
},
|
||||
{
|
||||
"$type": "MathOperatorContract",
|
||||
"NativeTypes": [
|
||||
{
|
||||
"m_type": 3
|
||||
},
|
||||
{
|
||||
"m_type": 6
|
||||
},
|
||||
{
|
||||
"m_type": 8
|
||||
},
|
||||
{
|
||||
"m_type": 9
|
||||
},
|
||||
{
|
||||
"m_type": 10
|
||||
},
|
||||
{
|
||||
"m_type": 11
|
||||
},
|
||||
{
|
||||
"m_type": 12
|
||||
},
|
||||
{
|
||||
"m_type": 14
|
||||
},
|
||||
{
|
||||
"m_type": 15
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"slotName": "Number",
|
||||
"toolTip": "An operand to use in performing the specified Operation",
|
||||
"DisplayDataType": {
|
||||
"m_type": 3
|
||||
},
|
||||
"DisplayGroup": {
|
||||
"Value": 1114760223
|
||||
},
|
||||
"Descriptor": {
|
||||
"ConnectionType": 1,
|
||||
"SlotType": 2
|
||||
},
|
||||
"DynamicGroup": {
|
||||
"Value": 1114760223
|
||||
},
|
||||
"DataType": 1,
|
||||
"IsReference": true,
|
||||
"VariableReference": {
|
||||
"m_id": "{8451E795-6A0E-44CE-81FD-AEF0EE5B0400}"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": {
|
||||
"m_id": "{610B3BFB-9043-47A0-9694-5F14A1947E36}"
|
||||
},
|
||||
"DynamicTypeOverride": 3,
|
||||
"contracts": [
|
||||
{
|
||||
"$type": "SlotTypeContract"
|
||||
},
|
||||
{
|
||||
"$type": "MathOperatorContract",
|
||||
"NativeTypes": [
|
||||
{
|
||||
"m_type": 3
|
||||
},
|
||||
{
|
||||
"m_type": 6
|
||||
},
|
||||
{
|
||||
"m_type": 8
|
||||
},
|
||||
{
|
||||
"m_type": 9
|
||||
},
|
||||
{
|
||||
"m_type": 10
|
||||
},
|
||||
{
|
||||
"m_type": 11
|
||||
},
|
||||
{
|
||||
"m_type": 12
|
||||
},
|
||||
{
|
||||
"m_type": 14
|
||||
},
|
||||
{
|
||||
"m_type": 15
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"slotName": "Number",
|
||||
"toolTip": "An operand to use in performing the specified Operation",
|
||||
"DisplayDataType": {
|
||||
"m_type": 3
|
||||
},
|
||||
"DisplayGroup": {
|
||||
"Value": 1114760223
|
||||
},
|
||||
"Descriptor": {
|
||||
"ConnectionType": 1,
|
||||
"SlotType": 2
|
||||
},
|
||||
"DynamicGroup": {
|
||||
"Value": 1114760223
|
||||
},
|
||||
"DataType": 1
|
||||
},
|
||||
{
|
||||
"id": {
|
||||
"m_id": "{36FFF1AB-C208-47CB-8271-436C85E0AE42}"
|
||||
},
|
||||
"DynamicTypeOverride": 3,
|
||||
"contracts": [
|
||||
{
|
||||
"$type": "SlotTypeContract"
|
||||
},
|
||||
{
|
||||
"$type": "MathOperatorContract",
|
||||
"NativeTypes": [
|
||||
{
|
||||
"m_type": 3
|
||||
},
|
||||
{
|
||||
"m_type": 6
|
||||
},
|
||||
{
|
||||
"m_type": 8
|
||||
},
|
||||
{
|
||||
"m_type": 9
|
||||
},
|
||||
{
|
||||
"m_type": 10
|
||||
},
|
||||
{
|
||||
"m_type": 11
|
||||
},
|
||||
{
|
||||
"m_type": 12
|
||||
},
|
||||
{
|
||||
"m_type": 14
|
||||
},
|
||||
{
|
||||
"m_type": 15
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"slotName": "Result",
|
||||
"toolTip": "The result of the specified operation",
|
||||
"DisplayDataType": {
|
||||
"m_type": 3
|
||||
},
|
||||
"DisplayGroup": {
|
||||
"Value": 1114760223
|
||||
},
|
||||
"Descriptor": {
|
||||
"ConnectionType": 2,
|
||||
"SlotType": 2
|
||||
},
|
||||
"DynamicGroup": {
|
||||
"Value": 1114760223
|
||||
},
|
||||
"DataType": 1,
|
||||
"IsReference": true,
|
||||
"VariableReference": {
|
||||
"m_id": "{8451E795-6A0E-44CE-81FD-AEF0EE5B0400}"
|
||||
}
|
||||
}
|
||||
],
|
||||
"Datums": [
|
||||
{
|
||||
"isOverloadedStorage": false,
|
||||
"scriptCanvasType": {
|
||||
"m_type": 3
|
||||
},
|
||||
"isNullPointer": false,
|
||||
"$type": "double",
|
||||
"value": 0.0,
|
||||
"label": "Number"
|
||||
},
|
||||
{
|
||||
"isOverloadedStorage": false,
|
||||
"scriptCanvasType": {
|
||||
"m_type": 3
|
||||
},
|
||||
"isNullPointer": false,
|
||||
"$type": "double",
|
||||
"value": 1.0,
|
||||
"label": "Number"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Id": {
|
||||
"id": 17736764369816
|
||||
},
|
||||
"Name": "ReceiveScriptEvent",
|
||||
"Components": {
|
||||
"Component_[16408183651077237195]": {
|
||||
"$type": "ReceiveScriptEvent",
|
||||
"Id": 16408183651077237195,
|
||||
"Slots": [
|
||||
{
|
||||
"id": {
|
||||
"m_id": "{8DC10581-B8DF-473C-9C75-996111DBF560}"
|
||||
},
|
||||
"contracts": [
|
||||
{
|
||||
"$type": "SlotTypeContract"
|
||||
}
|
||||
],
|
||||
"slotName": "Connect",
|
||||
"toolTip": "Connect this event handler to the specified entity.",
|
||||
"Descriptor": {
|
||||
"ConnectionType": 1,
|
||||
"SlotType": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": {
|
||||
"m_id": "{E60D1951-E56D-41F8-84C5-AD0BA803DD51}"
|
||||
},
|
||||
"contracts": [
|
||||
{
|
||||
"$type": "SlotTypeContract"
|
||||
}
|
||||
],
|
||||
"slotName": "Disconnect",
|
||||
"toolTip": "Disconnect this event handler.",
|
||||
"Descriptor": {
|
||||
"ConnectionType": 1,
|
||||
"SlotType": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": {
|
||||
"m_id": "{1BCE6CAC-B1C0-43FA-B4F5-E9A34D5064E5}"
|
||||
},
|
||||
"contracts": [
|
||||
{
|
||||
"$type": "SlotTypeContract"
|
||||
}
|
||||
],
|
||||
"slotName": "OnConnected",
|
||||
"toolTip": "Signaled when a connection has taken place.",
|
||||
"Descriptor": {
|
||||
"ConnectionType": 2,
|
||||
"SlotType": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": {
|
||||
"m_id": "{FEB42E9A-D562-4BBD-90AB-32255124BFE8}"
|
||||
},
|
||||
"contracts": [
|
||||
{
|
||||
"$type": "SlotTypeContract"
|
||||
}
|
||||
],
|
||||
"slotName": "OnDisconnected",
|
||||
"toolTip": "Signaled when this event handler is disconnected.",
|
||||
"Descriptor": {
|
||||
"ConnectionType": 2,
|
||||
"SlotType": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": {
|
||||
"m_id": "{C9EF936B-8C74-42B4-8793-67FC7FD3BCBC}"
|
||||
},
|
||||
"contracts": [
|
||||
{
|
||||
"$type": "SlotTypeContract"
|
||||
}
|
||||
],
|
||||
"slotName": "OnFailure",
|
||||
"toolTip": "Signaled when it is not possible to connect this handler.",
|
||||
"Descriptor": {
|
||||
"ConnectionType": 2,
|
||||
"SlotType": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": {
|
||||
"m_id": "{76985C7A-761A-4CEF-9F55-6DD2B136317A}"
|
||||
},
|
||||
"contracts": [
|
||||
{
|
||||
"$type": "SlotTypeContract"
|
||||
}
|
||||
],
|
||||
"slotName": "ExecutionSlot:NewPlayerScriptActive",
|
||||
"Descriptor": {
|
||||
"ConnectionType": 2,
|
||||
"SlotType": 1
|
||||
},
|
||||
"IsLatent": true
|
||||
},
|
||||
{
|
||||
"id": {
|
||||
"m_id": "{5CD8E1E9-6192-4B7D-9C2C-6C18BE99CF44}"
|
||||
},
|
||||
"contracts": [
|
||||
{
|
||||
"$type": "SlotTypeContract"
|
||||
}
|
||||
],
|
||||
"slotName": "Number",
|
||||
"Descriptor": {
|
||||
"ConnectionType": 1,
|
||||
"SlotType": 2
|
||||
},
|
||||
"DataType": 1,
|
||||
"IsReference": true,
|
||||
"VariableReference": {
|
||||
"m_id": "{8451E795-6A0E-44CE-81FD-AEF0EE5B0400}"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": {
|
||||
"m_id": "{9FDB71AA-0F19-406D-82CA-508A2CA10F95}"
|
||||
},
|
||||
"contracts": [
|
||||
{
|
||||
"$type": "SlotTypeContract"
|
||||
}
|
||||
],
|
||||
"slotName": "ExecutionSlot:GetNumberOfActivePlayers",
|
||||
"Descriptor": {
|
||||
"ConnectionType": 2,
|
||||
"SlotType": 1
|
||||
},
|
||||
"IsLatent": true
|
||||
}
|
||||
],
|
||||
"Datums": [
|
||||
{
|
||||
"isOverloadedStorage": false,
|
||||
"scriptCanvasType": {
|
||||
"m_type": 3
|
||||
},
|
||||
"isNullPointer": false,
|
||||
"$type": "double",
|
||||
"value": 0.0,
|
||||
"label": "Number"
|
||||
}
|
||||
],
|
||||
"m_version": 1,
|
||||
"m_eventMap": [
|
||||
{
|
||||
"Key": {
|
||||
"Value": 242067946
|
||||
},
|
||||
"Value": {
|
||||
"m_scriptEventAssetId": {
|
||||
"guid": "{FE1B1992-8220-5DD3-A60A-AEC85EB91C54}"
|
||||
},
|
||||
"m_eventName": "GetNumberOfActivePlayers",
|
||||
"m_eventSlotId": {
|
||||
"m_id": "{9FDB71AA-0F19-406D-82CA-508A2CA10F95}"
|
||||
},
|
||||
"m_resultSlotId": {
|
||||
"m_id": "{5CD8E1E9-6192-4B7D-9C2C-6C18BE99CF44}"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Key": {
|
||||
"Value": 2930121176
|
||||
},
|
||||
"Value": {
|
||||
"m_scriptEventAssetId": {
|
||||
"guid": "{FE1B1992-8220-5DD3-A60A-AEC85EB91C54}"
|
||||
},
|
||||
"m_eventName": "NewPlayerScriptActive",
|
||||
"m_eventSlotId": {
|
||||
"m_id": "{76985C7A-761A-4CEF-9F55-6DD2B136317A}"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"m_eventSlotMapping": {
|
||||
"{155BF981-AD70-4D29-81A6-1517FAE59FB1}": {
|
||||
"m_id": "{5CD8E1E9-6192-4B7D-9C2C-6C18BE99CF44}"
|
||||
},
|
||||
"{65D394D3-F90D-4F10-94BF-F5E1581CF2CF}": {
|
||||
"m_id": "{76985C7A-761A-4CEF-9F55-6DD2B136317A}"
|
||||
},
|
||||
"{67784749-9B41-429C-9C97-3D296182EB67}": {
|
||||
"m_id": "{9FDB71AA-0F19-406D-82CA-508A2CA10F95}"
|
||||
}
|
||||
},
|
||||
"m_scriptEventAssetId": {
|
||||
"guid": "{FE1B1992-8220-5DD3-A60A-AEC85EB91C54}"
|
||||
},
|
||||
"m_asset": {
|
||||
"assetId": {
|
||||
"guid": "{FE1B1992-8220-5DD3-A60A-AEC85EB91C54}"
|
||||
},
|
||||
"assetHint": "levels/multiplayer/autocomponent_rpc/globalgamedata.scriptevents"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"m_connections": [
|
||||
{
|
||||
"Id": {
|
||||
"id": 17745354304408
|
||||
},
|
||||
"Name": "srcEndpoint=(Receive Script Event: ExecutionSlot:NewPlayerScriptActive), destEndpoint=(Add (+): In)",
|
||||
"Components": {
|
||||
"Component_[8782209668839578826]": {
|
||||
"$type": "{64CA5016-E803-4AC4-9A36-BDA2C890C6EB} Connection",
|
||||
"Id": 8782209668839578826,
|
||||
"sourceEndpoint": {
|
||||
"nodeId": {
|
||||
"id": 17736764369816
|
||||
},
|
||||
"slotId": {
|
||||
"m_id": "{76985C7A-761A-4CEF-9F55-6DD2B136317A}"
|
||||
}
|
||||
},
|
||||
"targetEndpoint": {
|
||||
"nodeId": {
|
||||
"id": 17741059337112
|
||||
},
|
||||
"slotId": {
|
||||
"m_id": "{B7529112-C29F-45F0-811C-DB8EE18EB8B8}"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"m_scriptEventAssets": [
|
||||
[
|
||||
{
|
||||
"id": 17736764369816
|
||||
},
|
||||
{}
|
||||
]
|
||||
]
|
||||
},
|
||||
"m_assetType": "{3E2AC8CD-713F-453E-967F-29517F331784}",
|
||||
"versionData": {
|
||||
"_grammarVersion": 1,
|
||||
"_runtimeVersion": 1,
|
||||
"_fileVersion": 1
|
||||
},
|
||||
"m_variableCounter": 1,
|
||||
"GraphCanvasData": [
|
||||
{
|
||||
"Key": {
|
||||
"id": 17732469402520
|
||||
},
|
||||
"Value": {
|
||||
"ComponentData": {
|
||||
"{5F84B500-8C45-40D1-8EFC-A5306B241444}": {
|
||||
"$type": "SceneComponentSaveData"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Key": {
|
||||
"id": 17736764369816
|
||||
},
|
||||
"Value": {
|
||||
"ComponentData": {
|
||||
"{24CB38BB-1705-4EC5-8F63-B574571B4DCD}": {
|
||||
"$type": "NodeSaveData"
|
||||
},
|
||||
"{7CC444B1-F9B3-41B5-841B-0C4F2179F111}": {
|
||||
"$type": "GeometrySaveData",
|
||||
"Position": [
|
||||
-360.0,
|
||||
-60.0
|
||||
]
|
||||
},
|
||||
"{B0B99C8A-03AF-4CF6-A926-F65C874C3D97}": {
|
||||
"$type": "StylingComponentSaveData"
|
||||
},
|
||||
"{B1F49A35-8408-40DA-B79E-F1E3B64322CE}": {
|
||||
"$type": "PersistentIdComponentSaveData",
|
||||
"PersistentId": "{C419A1CF-CBA8-416B-BF6C-4B574C3E59E3}"
|
||||
},
|
||||
"{D8BBE799-7E4D-495A-B69A-1E3940670891}": {
|
||||
"$type": "ScriptEventReceiverHandlerNodeDescriptorSaveData",
|
||||
"EventNames": [
|
||||
[
|
||||
{
|
||||
"Value": 242067946
|
||||
},
|
||||
"GetNumberOfActivePlayers"
|
||||
],
|
||||
[
|
||||
{
|
||||
"Value": 2930121176
|
||||
},
|
||||
"NewPlayerScriptActive"
|
||||
]
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Key": {
|
||||
"id": 17741059337112
|
||||
},
|
||||
"Value": {
|
||||
"ComponentData": {
|
||||
"{24CB38BB-1705-4EC5-8F63-B574571B4DCD}": {
|
||||
"$type": "NodeSaveData"
|
||||
},
|
||||
"{328FF15C-C302-458F-A43D-E1794DE0904E}": {
|
||||
"$type": "GeneralNodeTitleComponentSaveData",
|
||||
"PaletteOverride": "MathNodeTitlePalette"
|
||||
},
|
||||
"{7CC444B1-F9B3-41B5-841B-0C4F2179F111}": {
|
||||
"$type": "GeometrySaveData",
|
||||
"Position": [
|
||||
120.0,
|
||||
100.0
|
||||
]
|
||||
},
|
||||
"{B0B99C8A-03AF-4CF6-A926-F65C874C3D97}": {
|
||||
"$type": "StylingComponentSaveData"
|
||||
},
|
||||
"{B1F49A35-8408-40DA-B79E-F1E3B64322CE}": {
|
||||
"$type": "PersistentIdComponentSaveData",
|
||||
"PersistentId": "{0D0751AD-8164-4196-9C09-8CDB9AAA296F}"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"StatisticsHelper": {
|
||||
"InstanceCounter": [
|
||||
{
|
||||
"Key": 1244476766431948410,
|
||||
"Value": 1
|
||||
},
|
||||
{
|
||||
"Key": 1678857390775488101,
|
||||
"Value": 1
|
||||
},
|
||||
{
|
||||
"Key": 1678857392390856307,
|
||||
"Value": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"Component_[16498171485036643402]": {
|
||||
"$type": "EditorGraphVariableManagerComponent",
|
||||
"Id": 16498171485036643402,
|
||||
"m_variableData": {
|
||||
"m_nameVariableMap": [
|
||||
{
|
||||
"Key": {
|
||||
"m_id": "{8451E795-6A0E-44CE-81FD-AEF0EE5B0400}"
|
||||
},
|
||||
"Value": {
|
||||
"Datum": {
|
||||
"isOverloadedStorage": false,
|
||||
"scriptCanvasType": {
|
||||
"m_type": 3
|
||||
},
|
||||
"isNullPointer": false,
|
||||
"$type": "double",
|
||||
"value": 0.0
|
||||
},
|
||||
"VariableId": {
|
||||
"m_id": "{8451E795-6A0E-44CE-81FD-AEF0EE5B0400}"
|
||||
},
|
||||
"VariableName": "ActivePlayerCount"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,106 @@
|
||||
<ObjectStream version="3">
|
||||
<Class name="ScriptEventsAsset" version="1" type="{CB4D603E-8CB0-4D80-8165-4244F28AF187}">
|
||||
<Class name="ScriptEvent" field="m_definition" version="1" type="{10A08CD3-32C9-4E18-8039-4B8A8157918E}">
|
||||
<Class name="unsigned int" field="m_version" value="1" type="{43DA906B-7DEF-4CA8-9790-854106D3F983}"/>
|
||||
<Class name="VersionedProperty" field="m_name" version="4" type="{828CA9C0-32F1-40B3-8018-EE7C3C38192A}">
|
||||
<Class name="AZ::Uuid" field="m_id" value="{6C6C69BC-EACC-450D-86FB-4CFCEED68F59}" type="{E152C105-A133-4D03-BBF8-3D4B2FBA3E2A}"/>
|
||||
<Class name="AZStd::string" field="m_label" value="Name" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
<Class name="unsigned int" field="m_version" value="0" type="{43DA906B-7DEF-4CA8-9790-854106D3F983}"/>
|
||||
<Class name="AZStd::vector" field="m_versions" type="{326CAAFE-9101-56E2-B869-D770629A6B19}"/>
|
||||
<Class name="any" field="m_data" type="{03924488-C7F4-4D6D-948B-ABC2D1AE2FD3}">
|
||||
<Class name="AZStd::string" field="m_data" value="GlobalGameData" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
</Class>
|
||||
</Class>
|
||||
<Class name="VersionedProperty" field="m_category" version="4" type="{828CA9C0-32F1-40B3-8018-EE7C3C38192A}">
|
||||
<Class name="AZ::Uuid" field="m_id" value="{2DF5A7AC-201B-4538-9903-8573C90CA595}" type="{E152C105-A133-4D03-BBF8-3D4B2FBA3E2A}"/>
|
||||
<Class name="AZStd::string" field="m_label" value="Category" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
<Class name="unsigned int" field="m_version" value="0" type="{43DA906B-7DEF-4CA8-9790-854106D3F983}"/>
|
||||
<Class name="AZStd::vector" field="m_versions" type="{326CAAFE-9101-56E2-B869-D770629A6B19}"/>
|
||||
<Class name="any" field="m_data" type="{03924488-C7F4-4D6D-948B-ABC2D1AE2FD3}">
|
||||
<Class name="AZStd::string" field="m_data" value="Script Events" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
</Class>
|
||||
</Class>
|
||||
<Class name="VersionedProperty" field="m_tooltip" version="4" type="{828CA9C0-32F1-40B3-8018-EE7C3C38192A}">
|
||||
<Class name="AZ::Uuid" field="m_id" value="{E2175455-06AB-402A-B4B5-C33D7CB6EAF9}" type="{E152C105-A133-4D03-BBF8-3D4B2FBA3E2A}"/>
|
||||
<Class name="AZStd::string" field="m_label" value="Tooltip" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
<Class name="unsigned int" field="m_version" value="0" type="{43DA906B-7DEF-4CA8-9790-854106D3F983}"/>
|
||||
<Class name="AZStd::vector" field="m_versions" type="{326CAAFE-9101-56E2-B869-D770629A6B19}"/>
|
||||
<Class name="any" field="m_data" type="{03924488-C7F4-4D6D-948B-ABC2D1AE2FD3}">
|
||||
<Class name="AZStd::string" field="m_data" value="" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
</Class>
|
||||
</Class>
|
||||
<Class name="VersionedProperty" field="m_addressType" version="4" type="{828CA9C0-32F1-40B3-8018-EE7C3C38192A}">
|
||||
<Class name="AZ::Uuid" field="m_id" value="{1B2DA4A8-A367-4A58-A8CA-8BB6F1F56E66}" type="{E152C105-A133-4D03-BBF8-3D4B2FBA3E2A}"/>
|
||||
<Class name="AZStd::string" field="m_label" value="Address Type" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
<Class name="unsigned int" field="m_version" value="0" type="{43DA906B-7DEF-4CA8-9790-854106D3F983}"/>
|
||||
<Class name="AZStd::vector" field="m_versions" type="{326CAAFE-9101-56E2-B869-D770629A6B19}"/>
|
||||
<Class name="any" field="m_data" type="{03924488-C7F4-4D6D-948B-ABC2D1AE2FD3}">
|
||||
<Class name="AZ::Uuid" field="m_data" value="{C0F1AFAD-5CB3-450E-B0F5-ADB5D46B0E22}" type="{E152C105-A133-4D03-BBF8-3D4B2FBA3E2A}"/>
|
||||
</Class>
|
||||
</Class>
|
||||
<Class name="AZStd::vector" field="m_methods" type="{D9866B79-D11A-58E6-B974-0B45783F53A4}">
|
||||
<Class name="Method" field="element" type="{E034EA83-C798-413D-ACE8-4923C51CF4F7}">
|
||||
<Class name="VersionedProperty" field="m_name" version="4" type="{828CA9C0-32F1-40B3-8018-EE7C3C38192A}">
|
||||
<Class name="AZ::Uuid" field="m_id" value="{65D394D3-F90D-4F10-94BF-F5E1581CF2CF}" type="{E152C105-A133-4D03-BBF8-3D4B2FBA3E2A}"/>
|
||||
<Class name="AZStd::string" field="m_label" value="Name" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
<Class name="unsigned int" field="m_version" value="0" type="{43DA906B-7DEF-4CA8-9790-854106D3F983}"/>
|
||||
<Class name="AZStd::vector" field="m_versions" type="{326CAAFE-9101-56E2-B869-D770629A6B19}"/>
|
||||
<Class name="any" field="m_data" type="{03924488-C7F4-4D6D-948B-ABC2D1AE2FD3}">
|
||||
<Class name="AZStd::string" field="m_data" value="NewPlayerScriptActive" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
</Class>
|
||||
</Class>
|
||||
<Class name="VersionedProperty" field="m_tooltip" version="4" type="{828CA9C0-32F1-40B3-8018-EE7C3C38192A}">
|
||||
<Class name="AZ::Uuid" field="m_id" value="{372785C7-51F9-4F51-989B-2C851F4D000E}" type="{E152C105-A133-4D03-BBF8-3D4B2FBA3E2A}"/>
|
||||
<Class name="AZStd::string" field="m_label" value="Tooltip" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
<Class name="unsigned int" field="m_version" value="0" type="{43DA906B-7DEF-4CA8-9790-854106D3F983}"/>
|
||||
<Class name="AZStd::vector" field="m_versions" type="{326CAAFE-9101-56E2-B869-D770629A6B19}"/>
|
||||
<Class name="any" field="m_data" type="{03924488-C7F4-4D6D-948B-ABC2D1AE2FD3}">
|
||||
<Class name="AZStd::string" field="m_data" value="" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
</Class>
|
||||
</Class>
|
||||
<Class name="VersionedProperty" field="m_returnType" version="4" type="{828CA9C0-32F1-40B3-8018-EE7C3C38192A}">
|
||||
<Class name="AZ::Uuid" field="m_id" value="{359740D1-3764-4267-8BEE-1D734C7D81FB}" type="{E152C105-A133-4D03-BBF8-3D4B2FBA3E2A}"/>
|
||||
<Class name="AZStd::string" field="m_label" value="Return Type" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
<Class name="unsigned int" field="m_version" value="0" type="{43DA906B-7DEF-4CA8-9790-854106D3F983}"/>
|
||||
<Class name="AZStd::vector" field="m_versions" type="{326CAAFE-9101-56E2-B869-D770629A6B19}"/>
|
||||
<Class name="any" field="m_data" type="{03924488-C7F4-4D6D-948B-ABC2D1AE2FD3}">
|
||||
<Class name="AZ::Uuid" field="m_data" value="{C0F1AFAD-5CB3-450E-B0F5-ADB5D46B0E22}" type="{E152C105-A133-4D03-BBF8-3D4B2FBA3E2A}"/>
|
||||
</Class>
|
||||
</Class>
|
||||
<Class name="AZStd::vector" field="m_parameters" type="{6ED13EA7-791B-57A8-A4F1-560B5F35B472}"/>
|
||||
</Class>
|
||||
<Class name="Method" field="element" type="{E034EA83-C798-413D-ACE8-4923C51CF4F7}">
|
||||
<Class name="VersionedProperty" field="m_name" version="4" type="{828CA9C0-32F1-40B3-8018-EE7C3C38192A}">
|
||||
<Class name="AZ::Uuid" field="m_id" value="{67784749-9B41-429C-9C97-3D296182EB67}" type="{E152C105-A133-4D03-BBF8-3D4B2FBA3E2A}"/>
|
||||
<Class name="AZStd::string" field="m_label" value="Name" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
<Class name="unsigned int" field="m_version" value="0" type="{43DA906B-7DEF-4CA8-9790-854106D3F983}"/>
|
||||
<Class name="AZStd::vector" field="m_versions" type="{326CAAFE-9101-56E2-B869-D770629A6B19}"/>
|
||||
<Class name="any" field="m_data" type="{03924488-C7F4-4D6D-948B-ABC2D1AE2FD3}">
|
||||
<Class name="AZStd::string" field="m_data" value="GetNumberOfActivePlayers" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
</Class>
|
||||
</Class>
|
||||
<Class name="VersionedProperty" field="m_tooltip" version="4" type="{828CA9C0-32F1-40B3-8018-EE7C3C38192A}">
|
||||
<Class name="AZ::Uuid" field="m_id" value="{92E33EC2-4B10-42A7-A568-2E1392E85D9F}" type="{E152C105-A133-4D03-BBF8-3D4B2FBA3E2A}"/>
|
||||
<Class name="AZStd::string" field="m_label" value="Tooltip" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
<Class name="unsigned int" field="m_version" value="0" type="{43DA906B-7DEF-4CA8-9790-854106D3F983}"/>
|
||||
<Class name="AZStd::vector" field="m_versions" type="{326CAAFE-9101-56E2-B869-D770629A6B19}"/>
|
||||
<Class name="any" field="m_data" type="{03924488-C7F4-4D6D-948B-ABC2D1AE2FD3}">
|
||||
<Class name="AZStd::string" field="m_data" value="" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
</Class>
|
||||
</Class>
|
||||
<Class name="VersionedProperty" field="m_returnType" version="4" type="{828CA9C0-32F1-40B3-8018-EE7C3C38192A}">
|
||||
<Class name="AZ::Uuid" field="m_id" value="{155BF981-AD70-4D29-81A6-1517FAE59FB1}" type="{E152C105-A133-4D03-BBF8-3D4B2FBA3E2A}"/>
|
||||
<Class name="AZStd::string" field="m_label" value="Number" type="{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}"/>
|
||||
<Class name="unsigned int" field="m_version" value="0" type="{43DA906B-7DEF-4CA8-9790-854106D3F983}"/>
|
||||
<Class name="AZStd::vector" field="m_versions" type="{326CAAFE-9101-56E2-B869-D770629A6B19}"/>
|
||||
<Class name="any" field="m_data" type="{03924488-C7F4-4D6D-948B-ABC2D1AE2FD3}">
|
||||
<Class name="AZ::Uuid" field="m_data" value="{110C4B14-11A8-4E9D-8638-5051013A56AC}" type="{E152C105-A133-4D03-BBF8-3D4B2FBA3E2A}"/>
|
||||
</Class>
|
||||
</Class>
|
||||
<Class name="AZStd::vector" field="m_parameters" type="{6ED13EA7-791B-57A8-A4F1-560B5F35B472}"/>
|
||||
</Class>
|
||||
</Class>
|
||||
</Class>
|
||||
</Class>
|
||||
</ObjectStream>
|
||||
|
||||
@@ -0,0 +1,195 @@
|
||||
{
|
||||
"ContainerEntity": {
|
||||
"Id": "ContainerEntity",
|
||||
"Name": "Player",
|
||||
"Components": {
|
||||
"Component_[10603663676997462041]": {
|
||||
"$type": "EditorDisabledCompositionComponent",
|
||||
"Id": 10603663676997462041
|
||||
},
|
||||
"Component_[11066377844757909329]": {
|
||||
"$type": "EditorPrefabComponent",
|
||||
"Id": 11066377844757909329
|
||||
},
|
||||
"Component_[11664640320098005944]": {
|
||||
"$type": "EditorEntityIconComponent",
|
||||
"Id": 11664640320098005944
|
||||
},
|
||||
"Component_[12551690377468870725]": {
|
||||
"$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
|
||||
"Id": 12551690377468870725,
|
||||
"Parent Entity": ""
|
||||
},
|
||||
"Component_[16402163080075698011]": {
|
||||
"$type": "EditorOnlyEntityComponent",
|
||||
"Id": 16402163080075698011
|
||||
},
|
||||
"Component_[3491366785918494447]": {
|
||||
"$type": "EditorLockComponent",
|
||||
"Id": 3491366785918494447
|
||||
},
|
||||
"Component_[4830373679514129871]": {
|
||||
"$type": "EditorVisibilityComponent",
|
||||
"Id": 4830373679514129871
|
||||
},
|
||||
"Component_[5144323498211834874]": {
|
||||
"$type": "SelectionComponent",
|
||||
"Id": 5144323498211834874
|
||||
},
|
||||
"Component_[5267607163086533733]": {
|
||||
"$type": "EditorInspectorComponent",
|
||||
"Id": 5267607163086533733
|
||||
},
|
||||
"Component_[6678300504118618849]": {
|
||||
"$type": "EditorPendingCompositionComponent",
|
||||
"Id": 6678300504118618849
|
||||
},
|
||||
"Component_[8384628950786300469]": {
|
||||
"$type": "EditorEntitySortComponent",
|
||||
"Id": 8384628950786300469,
|
||||
"Child Entity Order": [
|
||||
"Entity_[10070247746456]"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"Entities": {
|
||||
"Entity_[10070247746456]": {
|
||||
"Id": "Entity_[10070247746456]",
|
||||
"Name": "Player",
|
||||
"Components": {
|
||||
"Component_[1059478843478789313]": {
|
||||
"$type": "EditorInspectorComponent",
|
||||
"Id": 1059478843478789313,
|
||||
"ComponentOrderEntryArray": [
|
||||
{
|
||||
"ComponentId": 9878555871810913249
|
||||
},
|
||||
{
|
||||
"ComponentId": 11481641385923146202,
|
||||
"SortIndex": 1
|
||||
},
|
||||
{
|
||||
"ComponentId": 11440172471478606933,
|
||||
"SortIndex": 2
|
||||
},
|
||||
{
|
||||
"ComponentId": 17461691807054668218,
|
||||
"SortIndex": 3
|
||||
},
|
||||
{
|
||||
"ComponentId": 15530420875454157766,
|
||||
"SortIndex": 4
|
||||
},
|
||||
{
|
||||
"ComponentId": 10596595655489113153,
|
||||
"SortIndex": 5
|
||||
}
|
||||
]
|
||||
},
|
||||
"Component_[10596595655489113153]": {
|
||||
"$type": "EditorScriptCanvasComponent",
|
||||
"Id": 10596595655489113153,
|
||||
"m_name": "AutoComponent_RPC",
|
||||
"m_assetHolder": {
|
||||
"m_asset": {
|
||||
"assetId": {
|
||||
"guid": "{5ED120C4-07DC-56F1-80A7-37BFC98FD74E}"
|
||||
},
|
||||
"assetHint": "levels/multiplayer/autocomponent_rpc/autocomponent_rpc.scriptcanvas"
|
||||
}
|
||||
},
|
||||
"runtimeDataIsValid": true,
|
||||
"runtimeDataOverrides": {
|
||||
"source": {
|
||||
"assetId": {
|
||||
"guid": "{5ED120C4-07DC-56F1-80A7-37BFC98FD74E}"
|
||||
},
|
||||
"assetHint": "levels/multiplayer/autocomponent_rpc/autocomponent_rpc.scriptcanvas"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Component_[11440172471478606933]": {
|
||||
"$type": "GenericComponentWrapper",
|
||||
"Id": 11440172471478606933,
|
||||
"m_template": {
|
||||
"$type": "Multiplayer::NetworkTransformComponent"
|
||||
}
|
||||
},
|
||||
"Component_[11481641385923146202]": {
|
||||
"$type": "GenericComponentWrapper",
|
||||
"Id": 11481641385923146202,
|
||||
"m_template": {
|
||||
"$type": "NetBindComponent"
|
||||
}
|
||||
},
|
||||
"Component_[13110996849704981748]": {
|
||||
"$type": "EditorVisibilityComponent",
|
||||
"Id": 13110996849704981748
|
||||
},
|
||||
"Component_[1472895075383059499]": {
|
||||
"$type": "EditorLockComponent",
|
||||
"Id": 1472895075383059499
|
||||
},
|
||||
"Component_[1526920553231193509]": {
|
||||
"$type": "EditorPendingCompositionComponent",
|
||||
"Id": 1526920553231193509
|
||||
},
|
||||
"Component_[15530420875454157766]": {
|
||||
"$type": "GenericComponentWrapper",
|
||||
"Id": 15530420875454157766,
|
||||
"m_template": {
|
||||
"$type": "Multiplayer::LocalPredictionPlayerInputComponent"
|
||||
}
|
||||
},
|
||||
"Component_[1699895912837266792]": {
|
||||
"$type": "EditorDisabledCompositionComponent",
|
||||
"Id": 1699895912837266792
|
||||
},
|
||||
"Component_[17461691807054668218]": {
|
||||
"$type": "GenericComponentWrapper",
|
||||
"Id": 17461691807054668218,
|
||||
"m_template": {
|
||||
"$type": "AutomatedTesting::NetworkTestPlayerComponent"
|
||||
}
|
||||
},
|
||||
"Component_[3622545398462507871]": {
|
||||
"$type": "EditorOnlyEntityComponent",
|
||||
"Id": 3622545398462507871
|
||||
},
|
||||
"Component_[5778259918231688598]": {
|
||||
"$type": "AZ::Render::EditorMeshComponent",
|
||||
"Id": 5778259918231688598,
|
||||
"Controller": {
|
||||
"Configuration": {
|
||||
"ModelAsset": {
|
||||
"assetId": {
|
||||
"guid": "{F322592F-43BC-50E7-903C-CC231846093F}",
|
||||
"subId": 276443623
|
||||
},
|
||||
"assetHint": "objects/_primitives/_cylinder_1x1.azmodel"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"Component_[7004633483882343256]": {
|
||||
"$type": "SelectionComponent",
|
||||
"Id": 7004633483882343256
|
||||
},
|
||||
"Component_[8469628382507693850]": {
|
||||
"$type": "EditorEntitySortComponent",
|
||||
"Id": 8469628382507693850
|
||||
},
|
||||
"Component_[9407892837096707905]": {
|
||||
"$type": "EditorEntityIconComponent",
|
||||
"Id": 9407892837096707905
|
||||
},
|
||||
"Component_[9878555871810913249]": {
|
||||
"$type": "{27F1E1A1-8D9D-4C3B-BD3A-AFB9762449C0} TransformComponent",
|
||||
"Id": 9878555871810913249,
|
||||
"Parent Entity": "ContainerEntity"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
0,0,0,0,0,0
|
||||
0,0,0,0,0,0
|
||||
0,0,0,0,0,0
|
||||
0,0,0,0,0,0
|
||||
0,0,0,0,0,0
|
||||
0,0,0,0,0,0
|
||||
0,0,0,0,0,0
|
||||
0,0,0,0,0,0
|
||||
0,0,0,0,0,0
|
||||
0,0,0,0,0,0
|
||||
0,0,0,0,0,0
|
||||
0,0,0,0,0,0
|
||||
@@ -309,11 +309,11 @@ void {{ ClassName }}::Set{{ UpperFirst(Property.attrib['Name']) }}(const {{ Prop
|
||||
{#
|
||||
|
||||
#}
|
||||
{% macro PrintRpcParameters(printPrefix, paramDefines) %}
|
||||
{% if paramDefines|count > 0 %}
|
||||
{% macro PrintRpcParameters(printPrefix, paramDefines) -%}
|
||||
{% if paramDefines|count > 0 -%}
|
||||
{{ printPrefix }}{{ ', '.join(paramDefines) }}
|
||||
{% endif %}
|
||||
{% endmacro %}
|
||||
{%- endif %}
|
||||
{%- endmacro -%}
|
||||
{#
|
||||
|
||||
#}
|
||||
@@ -366,47 +366,45 @@ void {{ ClassName }}::{{ UpperFirst(Property.attrib['Name']) }}({{ PrintRpcParam
|
||||
{% set paramTypes = [] %}
|
||||
{% set paramDefines = [] %}
|
||||
{{ AutoComponentMacros.ParseRpcParams(Property, paramNames, paramTypes, paramDefines) }}
|
||||
->Method("{{ UpperFirst(Property.attrib['Name']) }}", []({{ ClassName }}* self{{ PrintRpcParameters(', ', paramDefines) }}) {
|
||||
{% if (InvokeFrom == 'Server') %}
|
||||
self->{{ UpperFirst(Property.attrib['Name']) }}({{ ', '.join(paramNames) }});
|
||||
{% elif (InvokeFrom == 'Authority') or (InvokeFrom == 'Autonomous') %}
|
||||
if (self->m_controller)
|
||||
{
|
||||
self->m_controller->{{ UpperFirst(Property.attrib['Name']) }}({{ ', '.join(paramNames) }});
|
||||
}
|
||||
else
|
||||
{
|
||||
AZ_Warning("Network RPC", false, "{{ ClassName }} {{ UpperFirst(Property.attrib['Name']) }} method failed. Entity '%s' (id: %s) {{ ClassName }} is missing the network controller. This remote-procedure can only be invoked from {{InvokeFrom}} network entities, because this entity doesn't have a controller, it must not be a {{InvokeFrom}} entity. Please check your network context before attempting to call {{ UpperFirst(Property.attrib['Name']) }}.", self->GetEntity()->GetName().c_str(), self->GetEntityId().ToString().c_str())
|
||||
}
|
||||
{% endif %}
|
||||
})
|
||||
->Method("{{ UpperFirst(Property.attrib['Name']) }}", []({{ ClassName }}* self{{ PrintRpcParameters(', ', paramDefines) }}){
|
||||
{% if (InvokeFrom == 'Server') %}
|
||||
self->{{ UpperFirst(Property.attrib['Name']) }}({{ ', '.join(paramNames) }});
|
||||
{% elif (InvokeFrom == 'Authority') or (InvokeFrom == 'Autonomous') %}
|
||||
if (self->m_controller)
|
||||
{
|
||||
self->m_controller->{{ UpperFirst(Property.attrib['Name']) }}({{ ', '.join(paramNames) }});
|
||||
}
|
||||
else
|
||||
{
|
||||
AZ_Warning("Network RPC", false, "{{ ClassName }} {{ UpperFirst(Property.attrib['Name']) }} method failed. Entity '%s' (id: %s) {{ ClassName }} is missing the network controller. This remote-procedure can only be invoked from {{InvokeFrom}} network entities, because this entity doesn't have a controller, it must not be a {{InvokeFrom}} entity. Please check your network context before attempting to call {{ UpperFirst(Property.attrib['Name']) }}.", self->GetEntity()->GetName().c_str(), self->GetEntityId().ToString().c_str())
|
||||
}
|
||||
{% endif %}
|
||||
})
|
||||
->Method("{{ UpperFirst(Property.attrib['Name']) }}ByEntityId", [](AZ::EntityId id{{ PrintRpcParameters(', ', paramDefines) }}) {
|
||||
|
||||
AZ::Entity* entity = AZ::Interface<AZ::ComponentApplicationRequests>::Get()->FindEntity(id);
|
||||
if (!entity)
|
||||
{
|
||||
AZ_Warning("Network RPC", false, "{{ ClassName }} {{ UpperFirst(Property.attrib['Name']) }}ByEntityId failed. The entity with id %s doesn't exist, please provide a valid entity id.", id.ToString().c_str())
|
||||
return;
|
||||
}
|
||||
|
||||
{{ ClassName }}* networkComponent = entity->FindComponent<{{ ClassName }}>();
|
||||
if (!networkComponent)
|
||||
{
|
||||
AZ_Warning("Network RPC", false, "{{ ClassName }} {{ UpperFirst(Property.attrib['Name']) }}ByEntityId failed. Entity '%s' (id: %s) is missing {{ ClassName }}, be sure to add {{ ClassName }} to this entity.", entity->GetName().c_str(), id.ToString().c_str())
|
||||
return;
|
||||
}
|
||||
{% if (InvokeFrom == 'Server') %}
|
||||
networkComponent->{{ UpperFirst(Property.attrib['Name']) }}({{ ', '.join(paramNames) }});
|
||||
{% elif (InvokeFrom == 'Authority') or (InvokeFrom == 'Autonomous') %}
|
||||
{{ ClassName }}Controller* controller = static_cast<{{ ClassName }}Controller*>(networkComponent->GetController());
|
||||
if (!controller)
|
||||
{
|
||||
AZ_Warning("Network RPC", false, "{{ ClassName }} {{ UpperFirst(Property.attrib['Name']) }}ByEntityId method failed. Entity '%s' (id: %s) {{ ClassName }} is missing the network controller. This RemoteProcedure can only be invoked from {{InvokeFrom}} network entities, because this entity doesn't have a controller, it must not be a {{InvokeFrom}} entity. Please check your network context before attempting to call {{ UpperFirst(Property.attrib['Name']) }}.", entity->GetName().c_str(), id.ToString().c_str())
|
||||
return;
|
||||
}
|
||||
controller->{{ UpperFirst(Property.attrib['Name']) }}({{ ', '.join(paramNames) }});
|
||||
{% endif %}
|
||||
}, { { { "Source", "The Source containing the {{ ClassName }}Controller" }{% for paramName in paramNames %}, {"{{ paramName }}"}{% endfor %}}})
|
||||
AZ::Entity* entity = AZ::Interface<AZ::ComponentApplicationRequests>::Get()->FindEntity(id);
|
||||
if (!entity)
|
||||
{
|
||||
AZ_Warning("Network RPC", false, "{{ ClassName }} {{ UpperFirst(Property.attrib['Name']) }}ByEntityId failed. The entity with id %s doesn't exist, please provide a valid entity id.", id.ToString().c_str())
|
||||
return;
|
||||
}
|
||||
{{ ClassName }}* networkComponent = entity->FindComponent<{{ ClassName }}>();
|
||||
if (!networkComponent)
|
||||
{
|
||||
AZ_Warning("Network RPC", false, "{{ ClassName }} {{ UpperFirst(Property.attrib['Name']) }}ByEntityId failed. Entity '%s' (id: %s) is missing {{ ClassName }}, be sure to add {{ ClassName }} to this entity.", entity->GetName().c_str(), id.ToString().c_str())
|
||||
return;
|
||||
}
|
||||
{% if (InvokeFrom == 'Server') %}
|
||||
networkComponent->{{ UpperFirst(Property.attrib['Name']) }}({{ ', '.join(paramNames) }});
|
||||
{% elif (InvokeFrom == 'Authority') or (InvokeFrom == 'Autonomous') %}
|
||||
{{ ClassName }}Controller* controller = static_cast<{{ ClassName }}Controller*>(networkComponent->GetController());
|
||||
if (!controller)
|
||||
{
|
||||
AZ_Warning("Network RPC", false, "{{ ClassName }} {{ UpperFirst(Property.attrib['Name']) }}ByEntityId method failed. Entity '%s' (id: %s) {{ ClassName }} is missing the network controller. This RemoteProcedure can only be invoked from {{InvokeFrom}} network entities, because this entity doesn't have a controller, it must not be a {{InvokeFrom}} entity. Please check your network context before attempting to call {{ UpperFirst(Property.attrib['Name']) }}.", entity->GetName().c_str(), id.ToString().c_str())
|
||||
return;
|
||||
}
|
||||
controller->{{ UpperFirst(Property.attrib['Name']) }}({{ ', '.join(paramNames) }});
|
||||
{% endif %}
|
||||
}, { { { "Source", "The Source containing the {{ ClassName }}Controller" }{% for paramName in paramNames %}, {"{{ paramName }}"}{% endfor %}}})
|
||||
->Attribute(AZ::Script::Attributes::ToolTip, "{{Property.attrib['Description']}}")
|
||||
{% endif %}
|
||||
{% endcall %}
|
||||
|
||||
@@ -41,6 +41,12 @@ namespace Multiplayer
|
||||
// Automated testing listens for these logs
|
||||
if (editorsv_isDedicated)
|
||||
{
|
||||
// Server logs will be piped to the editor so turn off buffering,
|
||||
// otherwise it'll take a lot of logs to fill up the buffer before stdout is finally flushed.
|
||||
// This isn't optimal, but will only affect editor-servers (used when testing multiplayer levels in Editor gameplay mode) and not production servers.
|
||||
// Note: _IOLBF (flush on newlines) won't work for Automated Testing which uses a headless server app and will fall back to _IOFBF (full buffering)
|
||||
setvbuf(stdout, NULL, _IONBF, 0);
|
||||
|
||||
// If the settings registry is not available at this point,
|
||||
// then something catastrophic has happened in the application startup.
|
||||
// That should have been caught and messaged out earlier in startup.
|
||||
@@ -235,5 +241,4 @@ namespace Multiplayer
|
||||
{
|
||||
return MultiplayerEditorPackets::DispatchPacket(connection, packetHeader, serializer, *this);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
#include <AzCore/IO/ByteContainerStream.h>
|
||||
#include <AzNetworking/ConnectionLayer/IConnectionListener.h>
|
||||
#include <AzCore/Settings/SettingsRegistry.h>
|
||||
#include <AzCore/Component/TickBus.h>
|
||||
|
||||
namespace AzNetworking
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user