浏览代码

Merge branch 'develop' into feature/pathfinding

# Conflicts:
#	Assets/BossRoom/Scenes/DungeonTest.unity
#	Assets/BossRoom/Scripts/Client/ClientInputSender.cs
#	Assets/BossRoom/Scripts/Server/Game/Action/ChaseAction.cs
#	Assets/BossRoom/Scripts/Server/ServerCharacterMovement.cs
#	ProjectSettings/DynamicsManager.asset
#	ProjectSettings/NavMeshAreas.asset
#	ProjectSettings/TagManager.asset
/main
Luke Stampfli 4 年前
当前提交
aaf62377
共有 73 个文件被更改,包括 5450 次插入1116 次删除
  1. 116
      Assets/BossRoom/Models/CharacterSet.fbx.meta
  2. 478
      Assets/BossRoom/Prefabs/Character/CharacterSet.prefab
  3. 89
      Assets/BossRoom/Prefabs/Character/Boss_deprecated.prefab
  4. 103
      Assets/BossRoom/Prefabs/Enemy.prefab
  5. 18
      Assets/BossRoom/Prefabs/Imp.prefab
  6. 23
      Assets/BossRoom/Prefabs/NetworkingManager.prefab
  7. 4
      Assets/BossRoom/Prefabs/State/BossRoomState.prefab
  8. 869
      Assets/BossRoom/Scenes/DungeonTest.unity
  9. 49
      Assets/BossRoom/Scenes/MainMenu.unity
  10. 32
      Assets/BossRoom/Scripts/Client/ClientCharacterVisualization.cs
  11. 11
      Assets/BossRoom/Scripts/Client/ClientInputSender.cs
  12. 2
      Assets/BossRoom/Scripts/Client/Game/Character/ModelSwap.cs
  13. 10
      Assets/BossRoom/Scripts/Client/Net/ClientGameNetPortal.cs
  14. 8
      Assets/BossRoom/Scripts/Client/UI/MainMenuUI.cs
  15. 9
      Assets/BossRoom/Scripts/Server/Game/Action/ActionPlayer.cs
  16. 22
      Assets/BossRoom/Scripts/Server/Game/Action/ChaseAction.cs
  17. 2
      Assets/BossRoom/Scripts/Server/Game/Action/MeleeAction.cs
  18. 15
      Assets/BossRoom/Scripts/Server/Game/State/ServerBossRoomState.cs
  19. 19
      Assets/BossRoom/Scripts/Server/Net/ServerGameNetPortal.cs
  20. 20
      Assets/BossRoom/Scripts/Server/ServerCharacterMovement.cs
  21. 69
      Assets/BossRoom/Scripts/Shared/Game/Action/ActionRequestData.cs
  22. 2
      Assets/BossRoom/Scripts/Shared/Net/GameNetPortal.cs
  23. 78
      Assets/BossRoom/Scripts/Shared/NetworkCharacterState.cs
  24. 8
      Packages/packages-lock.json
  25. 44
      ProjectSettings/DynamicsManager.asset
  26. 59
      ProjectSettings/GraphicsSettings.asset
  27. 12
      ProjectSettings/ProjectSettings.asset
  28. 79
      Assets/BossRoom/Material/Characters/Enemy_Eyes_sheet.mat
  29. 8
      Assets/BossRoom/Material/Characters/Enemy_Eyes_sheet.mat.meta
  30. 84
      Assets/BossRoom/Material/Characters/Enemy_Mouth_sheet.mat
  31. 8
      Assets/BossRoom/Material/Characters/Enemy_Mouth_sheet.mat.meta
  32. 83
      Assets/BossRoom/Material/Characters/ToonTest/Head_Imp.mat
  33. 8
      Assets/BossRoom/Material/Characters/ToonTest/Head_Imp.mat.meta
  34. 83
      Assets/BossRoom/Material/Characters/ToonTest/Torso_Imp.mat
  35. 8
      Assets/BossRoom/Material/Characters/ToonTest/Torso_Imp.mat.meta
  36. 408
      Assets/BossRoom/Models/BossSetController.controller
  37. 8
      Assets/BossRoom/Models/BossSetController.controller.meta
  38. 1001
      Assets/BossRoom/Prefabs/Character/Boss.prefab
  39. 7
      Assets/BossRoom/Prefabs/Character/Boss.prefab.meta
  40. 1001
      Assets/BossRoom/Prefabs/Character/Imp.prefab
  41. 7
      Assets/BossRoom/Prefabs/Character/Imp.prefab.meta
  42. 1
      Assets/BossRoom/Textures/Characters/Imp_Head_CLR.tga
  43. 96
      Assets/BossRoom/Textures/Characters/Imp_Head_CLR.tga.meta
  44. 1001
      Assets/BossRoom/Textures/Characters/Imp_Torso_CLR.tga
  45. 96
      Assets/BossRoom/Textures/Characters/Imp_Torso_CLR.tga.meta
  46. 29
      Assets/BossRoom/Scripts/Development/dgtest/Animate_Walk.cs
  47. 11
      Assets/BossRoom/Scripts/Development/dgtest/Animate_Walk.cs.meta
  48. 11
      Assets/BossRoom/Scripts/Development/dgtest/GameManager.cs.meta
  49. 27
      Assets/BossRoom/Scripts/Development/dgtest/GroundDiscManager.cs
  50. 11
      Assets/BossRoom/Scripts/Development/dgtest/GroundDiscManager.cs.meta
  51. 40
      Assets/BossRoom/Scripts/Development/dgtest/MainMenuFX.cs
  52. 11
      Assets/BossRoom/Scripts/Development/dgtest/MainMenuFX.cs.meta
  53. 11
      Assets/BossRoom/Scripts/Development/dgtest/MainMenuManager.cs.meta
  54. 8
      Assets/BossRoom/Scripts/Development/dgtest/Movement.meta
  55. 11
      Assets/BossRoom/Scripts/Development/dgtest/ProgramState.cs.meta
  56. 2
      Assets/BossRoom/Scripts/Development/dgtest/README.txt
  57. 7
      Assets/BossRoom/Scripts/Development/dgtest/README.txt.meta
  58. 125
      Assets/BossRoom/Scripts/Development/dgtest/SimpleInputMover.cs
  59. 11
      Assets/BossRoom/Scripts/Development/dgtest/SimpleInputMover.cs.meta
  60. 23
      Assets/BossRoom/Scripts/Development/dgtest/GameManager.cs
  61. 36
      Assets/BossRoom/Scripts/Development/dgtest/MainMenuManager.cs
  62. 34
      Assets/BossRoom/Scripts/Development/dgtest/ProgramState.cs
  63. 0
      /Assets/BossRoom/Prefabs/Character/Boss_deprecated.prefab.meta
  64. 0
      /Assets/BossRoom/Prefabs/Character/Boss_deprecated.prefab
  65. 0
      /Assets/BossRoom/Scripts/Client/Net/ClientGameNetPortal.cs.meta
  66. 0
      /Assets/BossRoom/Scripts/Client/Net/ClientGameNetPortal.cs
  67. 0
      /Assets/BossRoom/Scripts/Server/Net/ServerGameNetPortal.cs.meta
  68. 0
      /Assets/BossRoom/Scripts/Server/Net/ServerGameNetPortal.cs
  69. 0
      /Assets/BossRoom/Scripts/Shared/Net/GameNetPortal.cs.meta
  70. 0
      /Assets/BossRoom/Scripts/Shared/Net/GameNetPortal.cs

116
Assets/BossRoom/Models/CharacterSet.fbx.meta


maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: boss idle cloak
takeName: Take 001
internalID: 0
firstFrame: 535
lastFrame: 575
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: boss attack1 cloak
takeName: Take 001
internalID: 0
firstFrame: 576
lastFrame: 636
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: boss walk cloak
takeName: Take 001
internalID: 0
firstFrame: 637
lastFrame: 677
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: boss run cloak
takeName: Take 001
internalID: 0
firstFrame: 678
lastFrame: 702
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
isReadable: 0
meshes:
lODScreenPercentages: []

478
Assets/BossRoom/Prefabs/Character/CharacterSet.prefab
文件差异内容过多而无法显示
查看文件

89
Assets/BossRoom/Prefabs/Character/Boss_deprecated.prefab


serializedVersion: 6
m_Component:
- component: {fileID: 8471577964028083133}
m_Layer: 9
m_Layer: 6
m_Name: Bone_LeftLeg
m_TagString: Untagged
m_Icon: {fileID: 0}

- component: {fileID: 5676158276148367979}
- component: {fileID: 54423707692032037}
- component: {fileID: 7175551335003533805}
m_Layer: 9
m_Layer: 6
m_Name: Boss_Helmet
m_TagString: Untagged
m_Icon: {fileID: 0}

m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:

m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &904593528835651456
GameObject:
m_ObjectHideFlags: 0

- component: {fileID: 626770166029630456}
- component: {fileID: 2555491905317173766}
- component: {fileID: 4328569161924409889}
m_Layer: 9
m_Layer: 6
m_Name: Boss_Glove_Lt
m_TagString: Untagged
m_Icon: {fileID: 0}

m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:

m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &1036131051308789703
GameObject:
m_ObjectHideFlags: 0

serializedVersion: 6
m_Component:
- component: {fileID: 8542285524342066400}
m_Layer: 9
m_Layer: 6
m_Name: Bone_RightUpLeg
m_TagString: Untagged
m_Icon: {fileID: 0}

serializedVersion: 6
m_Component:
- component: {fileID: 1140478765031238550}
m_Layer: 9
m_Layer: 6
m_Name: Bone_RightHand
m_TagString: Untagged
m_Icon: {fileID: 0}

- component: {fileID: 6600658761209389537}
- component: {fileID: 1699740905855365628}
- component: {fileID: 3348957444581692891}
m_Layer: 9
m_Layer: 6
m_Name: Boss_Head
m_TagString: Untagged
m_Icon: {fileID: 0}

m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:

m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &2121042891709276067
GameObject:
m_ObjectHideFlags: 0

- component: {fileID: 8946188748949476855}
- component: {fileID: 6494873744548653873}
- component: {fileID: 8465568883583573626}
m_Layer: 9
m_Layer: 6
m_Name: Gear_LS_Boss_ShoulderPad_Boss
m_TagString: Untagged
m_Icon: {fileID: 0}

m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:

m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &2312244865545274376
GameObject:
m_ObjectHideFlags: 0

- component: {fileID: 4726480049140463974}
- component: {fileID: 1768238820954638404}
- component: {fileID: 6303408797671979499}
m_Layer: 9
m_Layer: 6
m_Name: Boss_Cape
m_TagString: Untagged
m_Icon: {fileID: 0}

m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:

m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &2406828545593368743
GameObject:
m_ObjectHideFlags: 0

serializedVersion: 6
m_Component:
- component: {fileID: 1132036376278279466}
m_Layer: 9
m_Layer: 6
m_Name: Bone_RightFoot
m_TagString: Untagged
m_Icon: {fileID: 0}

m_Component:
- component: {fileID: 8966078712925912292}
- component: {fileID: 6668753241094824838}
m_Layer: 9
m_Layer: 6
m_Name: Boss_Torso
m_TagString: Untagged
m_Icon: {fileID: 0}

m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:

- component: {fileID: 603178792514560972}
- component: {fileID: 452691621379955079}
- component: {fileID: 7711800719313727183}
m_Layer: 9
m_Layer: 6
m_Name: Boss_Eyes
m_TagString: Untagged
m_Icon: {fileID: 0}

m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:

m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &3126842796222407860
GameObject:
m_ObjectHideFlags: 0

- component: {fileID: 2488372380926969271}
- component: {fileID: 2049154182302028074}
- component: {fileID: 7457370326150778517}
m_Layer: 9
m_Layer: 6
m_Name: Boss_WeaponR
m_TagString: Untagged
m_Icon: {fileID: 0}

m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:

m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &3718114743247664942
GameObject:
m_ObjectHideFlags: 0

serializedVersion: 6
m_Component:
- component: {fileID: 1971106785374315311}
m_Layer: 9
m_Layer: 6
m_Name: Bone_RightForeArm
m_TagString: Untagged
m_Icon: {fileID: 0}

m_Component:
- component: {fileID: 4099936395697225189}
- component: {fileID: 7927965616957794207}
m_Layer: 9
m_Layer: 6
m_Name: Boss2
m_TagString: Untagged
m_Icon: {fileID: 0}

serializedVersion: 6
m_Component:
- component: {fileID: 1566582967606412568}
m_Layer: 9
m_Layer: 6
m_Name: Bone_RightArm
m_TagString: Untagged
m_Icon: {fileID: 0}

serializedVersion: 6
m_Component:
- component: {fileID: 7501691112458786858}
m_Layer: 9
m_Layer: 6
m_Name: Bone_RightLeg
m_TagString: Untagged
m_Icon: {fileID: 0}

serializedVersion: 6
m_Component:
- component: {fileID: 3720208583712229245}
m_Layer: 9
m_Layer: 6
m_Name: Bone_Hips
m_TagString: Untagged
m_Icon: {fileID: 0}

- component: {fileID: 7527631219540611878}
- component: {fileID: 7040062443551072368}
- component: {fileID: 8617234224883782350}
m_Layer: 9
m_Layer: 6
m_Name: Boss_Glove_Rt
m_TagString: Untagged
m_Icon: {fileID: 0}

m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:

m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &4819475020614827668
GameObject:
m_ObjectHideFlags: 0

serializedVersion: 6
m_Component:
- component: {fileID: 6619384670924476501}
m_Layer: 9
m_Layer: 6
m_Name: Head_Parent_Boss
m_TagString: Untagged
m_Icon: {fileID: 0}

serializedVersion: 6
m_Component:
- component: {fileID: 8043182327089238558}
m_Layer: 9
m_Layer: 6
m_Name: Bone_LeftFoot
m_TagString: Untagged
m_Icon: {fileID: 0}

serializedVersion: 6
m_Component:
- component: {fileID: 9211626956227493483}
m_Layer: 9
m_Layer: 6
m_Name: Bone_LeftArm
m_TagString: Untagged
m_Icon: {fileID: 0}

serializedVersion: 6
m_Component:
- component: {fileID: 9198638882861967147}
m_Layer: 9
m_Layer: 6
m_Name: Bone_Head
m_TagString: Untagged
m_Icon: {fileID: 0}

serializedVersion: 6
m_Component:
- component: {fileID: 1391467309202912901}
m_Layer: 9
m_Layer: 6
m_Name: Bone_Toe
m_TagString: Untagged
m_Icon: {fileID: 0}

- component: {fileID: 1384445393761489082}
- component: {fileID: 3246570027778185146}
- component: {fileID: 3414140823306047527}
m_Layer: 9
m_Layer: 6
m_Name: Gear_RS_Boss_ShoulderPad_Boss
m_TagString: Untagged
m_Icon: {fileID: 0}

m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:

m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &7117213022976001748
GameObject:
m_ObjectHideFlags: 0

serializedVersion: 6
m_Component:
- component: {fileID: 2010958861556071026}
m_Layer: 9
m_Layer: 6
m_Name: Bone_Spine
m_TagString: Untagged
m_Icon: {fileID: 0}

serializedVersion: 6
m_Component:
- component: {fileID: 1288126753454780576}
m_Layer: 9
m_Layer: 6
m_Name: Bone_LeftHand
m_TagString: Untagged
m_Icon: {fileID: 0}

- component: {fileID: 6884167237989972628}
- component: {fileID: 1741574821687613046}
- component: {fileID: 4937234158457664444}
m_Layer: 9
m_Layer: 6
m_Name: Boss_WeaponL
m_TagString: Untagged
m_Icon: {fileID: 0}

m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:

m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &7225200066265528246
GameObject:
m_ObjectHideFlags: 0

serializedVersion: 6
m_Component:
- component: {fileID: 2917788714295042895}
m_Layer: 9
m_Layer: 6
m_Name: Bone_LeftForeArm
m_TagString: Untagged
m_Icon: {fileID: 0}

- component: {fileID: 4791243883948405992}
- component: {fileID: 363385033821201294}
- component: {fileID: 4305011951190088136}
m_Layer: 9
m_Layer: 6
m_Name: Boss_Mouth
m_TagString: Untagged
m_Icon: {fileID: 0}

m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:

m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &7557688286833805465
GameObject:
m_ObjectHideFlags: 0

serializedVersion: 6
m_Component:
- component: {fileID: 5775205839377955254}
m_Layer: 9
m_Layer: 6
m_Name: Bone_LeftUpLeg
m_TagString: Untagged
m_Icon: {fileID: 0}

- component: {fileID: 2946991962905641278}
- component: {fileID: 6756640246431350128}
- component: {fileID: 2092317927563564270}
m_Layer: 9
m_Layer: 6
m_Name: Boss_Ears
m_TagString: Untagged
m_Icon: {fileID: 0}

m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:

m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &8836459243253453128
GameObject:
m_ObjectHideFlags: 0

serializedVersion: 6
m_Component:
- component: {fileID: 1567577323923291153}
m_Layer: 9
m_Layer: 6
m_Name: Bone_Toe 1
m_TagString: Untagged
m_Icon: {fileID: 0}

103
Assets/BossRoom/Prefabs/Enemy.prefab


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &1878903107775871435
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3437256802070767247}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: edb78c1621dad5149bb47b96120d3fbf, type: 3}
m_Name:
m_EditorClassIdentifier:
HitPoints:
InternalValue: 0
Mana:
InternalValue: 0
--- !u!114 &3375538458323645294
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3437256802070767247}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9520a47fc61d5ab4ca99cdac2d574909, type: 3}
m_Name:
m_EditorClassIdentifier:
MinZoomDistance: 3
MaxZoomDistance: 30
ZoomSpeed: 3
--- !u!1 &4340979889802297118
GameObject:
m_ObjectHideFlags: 0

m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 2663956648913632309}
- {fileID: 4818022201665423606}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}

m_Script: {fileID: 11500000, guid: 797d92969c575574d868e069887e8486, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1001 &2025951435693425104
--- !u!1001 &1692449221005613434
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2

- target: {fileID: 2092317927563564270, guid: 08c3914aa4064d349a429bc090494787, type: 3}
propertyPath: m_Materials.Array.data[0]
- target: {fileID: 2663813019036984750, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
propertyPath: m_ClientVisualsAnimator
objectReference: {fileID: 2100000, guid: 3091d04ea639b8c48bbdd46bf02f2875, type: 2}
- target: {fileID: 3348957444581692891, guid: 08c3914aa4064d349a429bc090494787, type: 3}
propertyPath: m_Materials.Array.data[0]
value:
objectReference: {fileID: 2100000, guid: 3091d04ea639b8c48bbdd46bf02f2875, type: 2}
- target: {fileID: 3723974146209228639, guid: 08c3914aa4064d349a429bc090494787, type: 3}
propertyPath: m_Name
value: Boss2
objectReference: {fileID: 0}
- target: {fileID: 4099936395697225189, guid: 08c3914aa4064d349a429bc090494787, type: 3}
objectReference: {fileID: 1458358683133760140}
- target: {fileID: 6170428688339538316, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
- target: {fileID: 4099936395697225189, guid: 08c3914aa4064d349a429bc090494787, type: 3}
- target: {fileID: 6170428688339538316, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
- target: {fileID: 4099936395697225189, guid: 08c3914aa4064d349a429bc090494787, type: 3}
- target: {fileID: 6170428688339538316, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
- target: {fileID: 4099936395697225189, guid: 08c3914aa4064d349a429bc090494787, type: 3}
- target: {fileID: 6170428688339538316, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
- target: {fileID: 4099936395697225189, guid: 08c3914aa4064d349a429bc090494787, type: 3}
- target: {fileID: 6170428688339538316, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
value: 0.25012913
value: 1
- target: {fileID: 4099936395697225189, guid: 08c3914aa4064d349a429bc090494787, type: 3}
- target: {fileID: 6170428688339538316, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
value: -0
value: 0
- target: {fileID: 4099936395697225189, guid: 08c3914aa4064d349a429bc090494787, type: 3}
- target: {fileID: 6170428688339538316, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
value: -0.9682125
value: 0
- target: {fileID: 4099936395697225189, guid: 08c3914aa4064d349a429bc090494787, type: 3}
- target: {fileID: 6170428688339538316, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
value: -0
value: 0
- target: {fileID: 4099936395697225189, guid: 08c3914aa4064d349a429bc090494787, type: 3}
- target: {fileID: 6170428688339538316, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
- target: {fileID: 4099936395697225189, guid: 08c3914aa4064d349a429bc090494787, type: 3}
- target: {fileID: 6170428688339538316, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
value: -151.03001
value: 0
- target: {fileID: 4099936395697225189, guid: 08c3914aa4064d349a429bc090494787, type: 3}
- target: {fileID: 6170428688339538316, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
objectReference: {fileID: 0}
- target: {fileID: 6839301660383890230, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
propertyPath: m_Name
value: Boss
m_SourcePrefab: {fileID: 100100000, guid: 08c3914aa4064d349a429bc090494787, type: 3}
--- !u!1 &3437256802070767247 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 3723974146209228639, guid: 08c3914aa4064d349a429bc090494787, type: 3}
m_PrefabInstance: {fileID: 2025951435693425104}
m_SourcePrefab: {fileID: 100100000, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
--- !u!4 &4818022201665423606 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 6170428688339538316, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
m_PrefabInstance: {fileID: 1692449221005613434}
--- !u!4 &2663956648913632309 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 4099936395697225189, guid: 08c3914aa4064d349a429bc090494787, type: 3}
m_PrefabInstance: {fileID: 2025951435693425104}
--- !u!95 &1458358683133760140 stripped
Animator:
m_CorrespondingSourceObject: {fileID: 234724737205816310, guid: 1e8ae28d24c5683478548d7e96e5ba55, type: 3}
m_PrefabInstance: {fileID: 1692449221005613434}
m_PrefabAsset: {fileID: 0}

18
Assets/BossRoom/Prefabs/Imp.prefab


m_Component:
- component: {fileID: 3443969269427342405}
- component: {fileID: 8731146078263039551}
- component: {fileID: 1234019091858508219}
- component: {fileID: 2732413867170824990}
m_Layer: 9
m_Name: Boss2

m_HasTransformHierarchy: 1
m_AllowConstantClipSamplingOptimization: 1
m_KeepAnimatorControllerStateOnDisable: 0
--- !u!114 &1234019091858508219
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2630312606306686719}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: edb78c1621dad5149bb47b96120d3fbf, type: 3}
m_Name:
m_EditorClassIdentifier:
HitPoints:
InternalValue: 0
Mana:
InternalValue: 0
--- !u!114 &2732413867170824990
MonoBehaviour:
m_ObjectHideFlags: 0

m_Script: {fileID: 11500000, guid: 9520a47fc61d5ab4ca99cdac2d574909, type: 3}
m_Name:
m_EditorClassIdentifier:
m_ClientVisualsAnimator: {fileID: 8731146078263039551}
MinZoomDistance: 0
MaxZoomDistance: 0
ZoomSpeed: 0

23
Assets/BossRoom/Prefabs/NetworkingManager.prefab


- component: {fileID: 5436007408952557924}
- component: {fileID: 5436007408952557927}
- component: {fileID: 5436007408952557926}
- component: {fileID: 5436007408952557945}
m_Layer: 0
m_Name: NetworkingManager
m_TagString: Untagged

SimulatePacketLossChance: 0
SimulateMinLatency: 0
SimulateMaxLatency: 0
--- !u!114 &5436007408952557945
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5436007408952557947}
m_Enabled: 0
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 52c005b32a68a254cbe502a4e5cb8eb6, type: 3}
m_Name:
m_EditorClassIdentifier:
appId: bc5b8b0d-edf3-4c61-9593-ce38da7f0c79
gameVersion: 0.0.0
region: EU
nickName:
roomName:
maxPlayers: 4
batchedTransportEventCode: 129
channelIdCodesStartRange: 130
attachSupportLogger: 1
sendQueueBatchSize: 4096

4
Assets/BossRoom/Prefabs/State/BossRoomState.prefab


m_Script: {fileID: 11500000, guid: 927521835ae055247b17e4abe805b4ab, type: 3}
m_Name:
m_EditorClassIdentifier:
PlayerPrefab: {fileID: 4600110157238723790, guid: bb87f9bac2595f8499c048016c4b2e1d, type: 3}
EnemyPrefab: {fileID: -3741253011127748524, guid: 5f8daaa54415e5e41b5162cd13121359, type: 3}
m_PlayerPrefab: {fileID: 4600110157238723790, guid: bb87f9bac2595f8499c048016c4b2e1d, type: 3}
m_EnemyPrefab: {fileID: -3741253011127748524, guid: 5f8daaa54415e5e41b5162cd13121359, type: 3}

869
Assets/BossRoom/Scenes/DungeonTest.unity
文件差异内容过多而无法显示
查看文件

49
Assets/BossRoom/Scenes/MainMenu.unity


m_GameObject: {fileID: 33109991}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 4.2152314, y: 4.2152314, z: 4.2152314}
m_LocalScale: {x: 3.02004, y: 3.02004, z: 3.02004}
m_Children:
- {fileID: 1219606791}
m_Father: {fileID: 1240187547}

m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: -0.5}
m_AnchoredPosition: {x: 0, y: -21}
m_SizeDelta: {x: 160, y: 30}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &33109993

m_GameObject: {fileID: 200724330}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 4.2152314, y: 4.2152314, z: 4.2152314}
m_LocalScale: {x: 0.5570696, y: 0.5570696, z: 0.5570696}
m_Children:
- {fileID: 1234271886}
- {fileID: 714400692}

m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: -310}
m_SizeDelta: {x: 160, y: 30}
m_AnchoredPosition: {x: 0, y: -315.9}
m_SizeDelta: {x: 736, y: 162}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &200724332
MonoBehaviour:

m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: -0.5}
m_AnchoredPosition: {x: 0, y: -32}
m_SizeDelta: {x: -20, y: -13}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &714400693

m_Calls: []
m_FontData:
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
m_FontSize: 14
m_FontStyle: 0
m_FontSize: 75
m_FontStyle: 1
m_MinSize: 10
m_MaxSize: 40
m_MinSize: 5
m_MaxSize: 75
m_Alignment: 1
m_AlignByGeometry: 0
m_RichText: 0

m_GameObject: {fileID: 726602803}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalScale: {x: 1.6778, y: 1.6778, z: 1.6778}
m_Children: []
m_Father: {fileID: 1240187547}
m_RootOrder: 2

m_GameObject: {fileID: 1153501709}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: -1}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalScale: {x: 1.0066801, y: 1.0066801, z: 0.8389}
m_Children: []
m_Father: {fileID: 1240187547}
m_RootOrder: 0

m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: -0.5}
m_AnchoredPosition: {x: 0, y: -31.999966}
m_SizeDelta: {x: -20, y: -13}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1234271887

m_Calls: []
m_FontData:
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
m_FontSize: 14
m_FontStyle: 2
m_FontSize: 75
m_FontStyle: 3
m_MaxSize: 40
m_MaxSize: 75
m_Alignment: 1
m_AlignByGeometry: 0
m_RichText: 1

m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_Name:
m_EditorClassIdentifier:
m_UiScaleMode: 0
m_UiScaleMode: 1
m_ReferenceResolution: {x: 800, y: 600}
m_ReferenceResolution: {x: 1920, y: 1080}
m_MatchWidthOrHeight: 0
m_MatchWidthOrHeight: 0.506
m_PhysicalUnit: 3
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96

m_GameObject: {fileID: 1827325232}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: -0.15}
m_LocalScale: {x: 1.6370162, y: 1.6370162, z: 1.6370162}
m_LocalScale: {x: 1.2577441, y: 1.2577441, z: 1.2577441}
m_Children: []
m_Father: {fileID: 1240187547}
m_RootOrder: 1

m_AnchoredPosition: {x: 0, y: 384}
m_AnchoredPosition: {x: 0, y: 293}
m_SizeDelta: {x: 1000, y: 512}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1827325234

m_GameObject: {fileID: 1985907275}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 4.2152314, y: 4.2152314, z: 4.2152314}
m_LocalScale: {x: 3.02004, y: 3.02004, z: 3.02004}
m_Children:
- {fileID: 1186502851}
m_Father: {fileID: 1240187547}

m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: -155}
m_AnchoredPosition: {x: 0, y: -169}
m_SizeDelta: {x: 160, y: 30}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1985907277

propertyPath: m_Name
value: NetworkingManager
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedComponents:
- {fileID: 5436007408952557945, guid: 8f5ddd70561bc0b42bbbe5a8a155bb7b, type: 3}
m_SourcePrefab: {fileID: 100100000, guid: 8f5ddd70561bc0b42bbbe5a8a155bb7b, type: 3}

32
Assets/BossRoom/Scripts/Client/ClientCharacterVisualization.cs


using UnityEngine;
using Cinemachine;
namespace BossRoom.Viz
namespace BossRoom.Visual
[RequireComponent(typeof(NetworkCharacterState))]
[SerializeField]
private CinemachineVirtualCamera m_MainCamera;
private Transform m_Parent;

m_ClientVisualsAnimator.SetTrigger("BeginAttack");
}
void Awake()
{
m_ClientVisualsAnimator = GetComponent<Animator>();
}
SmoothMove();
if (m_Parent == null)
{
//since we aren't in the transform hierarchy, we have to explicitly die when our parent dies.
GameObject.Destroy(this.gameObject);
return;
}
SmoothMove();
if (m_ClientVisualsAnimator)
{

private void SmoothMove()
{
if (m_Parent == null)
{
//since we aren't in the transform hierarchy, we have to explicitly die when our parent dies.
GameObject.Destroy(this.gameObject);
return;
}
var pos_diff = m_Parent.transform.position - transform.position;
var angle_diff = Quaternion.Angle(m_Parent.transform.rotation, transform.rotation);

private void AttachCamera()
{
m_MainCamera = (CinemachineVirtualCamera)FindObjectOfType(typeof(CinemachineVirtualCamera));
var cameraGO = GameObject.FindGameObjectWithTag("CMCamera");
if( cameraGO == null ) { return; }
m_MainCamera = cameraGO.GetComponent<CinemachineVirtualCamera>();
if (m_MainCamera)
{
m_MainCamera.Follow = transform;

11
Assets/BossRoom/Scripts/Client/ClientInputSender.cs


//these two actions will queue one after the other, causing us to run over to our target and take a swing.
var chase_data = new ActionRequestData();
chase_data.ActionTypeEnum = ActionType.GENERAL_CHASE;
chase_data.Amount = 3f;
chase_data.TargetIds = new ulong[] {GetTargetObject(ref hit)};
m_NetworkCharacter.C2S_DoAction(ref chase_data);
chase_data.Amount = ActionData.ActionDescriptions[ActionType.TANK_BASEATTACK][0].Range;
chase_data.TargetIds = new ulong[] { GetTargetObject(ref hit) };
m_NetworkCharacter.ClientSendActionRequest(ref chase_data);
m_NetworkCharacter.C2S_DoAction(ref hit_data);
m_NetworkCharacter.ClientSendActionRequest(ref hit_data);
m_NetworkCharacter.C2S_DoAction(ref data);
m_NetworkCharacter.ClientSendActionRequest(ref data);
}
m_AttackClickRequest = null;

{
return 0;
}
var targetObj = hit.collider.GetComponent<NetworkedObject>();
if (targetObj == null)
{

2
Assets/BossRoom/Scripts/Client/Game/Character/ModelSwap.cs


using UnityEngine;
using UnityEngine.UI;
namespace BossRoom.Viz
namespace BossRoom.Visual
{
public class ModelSwap : MonoBehaviour
{

10
Assets/BossRoom/Scripts/Client/Net/ClientGameNetPortal.cs


/// <summary>
/// Client logic for the GameNetHub. Contains implementations for all of GameNetHub's S2C RPCs.
/// </summary>
[RequireComponent(typeof(GameNetHub))]
public class ClientGNHLogic : MonoBehaviour
[RequireComponent(typeof(GameNetPortal))]
public class ClientGameNetPortal : MonoBehaviour
private GameNetHub m_Hub;
private GameNetPortal m_Hub;
m_Hub = GetComponent<GameNetHub>();
m_Hub = GetComponent<GameNetPortal>();
m_Hub.NetworkStartEvent += this.NetworkStart;
m_Hub.ConnectFinishedEvent += this.OnConnectFinished;
}

/// </remarks>
/// <param name="ipaddress">the IP address of the host to connect to. (currently IPV4 only)</param>
/// <param name="port">The port of the host to connect to. </param>
public static void StartClient(GameNetHub hub, string ipaddress, int port)
public static void StartClient(GameNetPortal hub, string ipaddress, int port)
{
string client_guid = GetOrCreateGuid();
string payload = $"client_guid={client_guid}\n"; //minimal format where key=value pairs are separated by newlines.

8
Assets/BossRoom/Scripts/Client/UI/MainMenuUI.cs


using System.Collections.Generic;
using UnityEngine;
namespace BossRoom.Viz
namespace BossRoom.Visual
{
/// <summary>
/// Provides backing logic for all of the UI that runs in the MainMenu stage.

public GameObject GameHubGO;
public GameObject InputTextGO;
private BossRoom.GameNetHub m_netHub;
private BossRoom.GameNetPortal m_netHub;
/// <summary>
/// This will get more sophisticated as we move to a true relay model.

// Start is called before the first frame update
void Start()
{
m_netHub = GameHubGO.GetComponent<BossRoom.GameNetHub>();
m_netHub = GameHubGO.GetComponent<BossRoom.GameNetPortal>();
}
/// <summary>

public void OnConnectClicked()
{
BossRoom.Client.ClientGNHLogic.StartClient(m_netHub, GetIPAddress(), k_connectPort);
BossRoom.Client.ClientGameNetPortal.StartClient(m_netHub, GetIPAddress(), k_connectPort);
}
}
}

9
Assets/BossRoom/Scripts/Server/Game/Action/ActionPlayer.cs


{
if( this.m_queue.Count > 0 )
{
bool keepgoing = m_queue[0].Update();
bool expirable = m_queue[0].Description.Duration_s > 0f; //non-positive value is a sentinel indicating the duration is indefinite.
bool time_expired = expirable && (Time.time - m_queue[0].TimeStarted) >= m_queue[0].Description.Duration_s;
if ( !keepgoing || time_expired )
Action runningAction = m_queue[0]; //action at the front of the queue is the one that is actively running.
bool keepGoing = runningAction.Update();
bool expirable = runningAction.Description.Duration_s > 0f; //non-positive value is a sentinel indicating the duration is indefinite.
bool timeExpired = expirable && (Time.time - runningAction.TimeStarted) >= runningAction.Description.Duration_s;
if ( !keepGoing || timeExpired )
{
AdvanceQueue(true);
}

22
Assets/BossRoom/Scripts/Server/Game/Action/ChaseAction.cs


/// <returns>false if the action decided it doesn't want to run after all, true otherwise. </returns>
public override bool Start()
{
if(m_Data.TargetIds == null || m_Data.TargetIds.Length == 0 || !MLAPI.Spawning.SpawnManager.SpawnedObjects.ContainsKey(m_Data.TargetIds[0]) )
if (!HasValidTarget())
{
Debug.Log("Failed to start ChaseAction. The target entity wasn't submitted or doesn't exist anymore" );
return false;

}
/// <summary>
/// Returns true if our ActionRequestData came with a valid target. For the ChaseAction, this is pretty liberal (could be friend or foe, could be
/// dead or alive--just needs to be present).
/// </summary>
private bool HasValidTarget()
{
return m_Data.TargetIds != null &&
m_Data.TargetIds.Length > 0 &&
MLAPI.Spawning.SpawnManager.SpawnedObjects.ContainsKey(m_Data.TargetIds[0]);
}
/// <summary>
float dist_to_target = (m_Parent.transform.position - m_Target.transform.position).magnitude;
if( m_Data.Amount > dist_to_target )
float distToTarget2 = (m_Parent.transform.position - m_Target.transform.position).sqrMagnitude;
if( (m_Data.Amount*m_Data.Amount) > distToTarget2 )
{
//we made it! we're done.
Cancel();

public override void Cancel()
{
if( m_Movement != null )
{
m_Movement.CancelMove();
}
m_Movement?.CancelMove();
}
}

2
Assets/BossRoom/Scripts/Server/Game/Action/MeleeAction.cs


public override bool Start()
{
m_Parent.NetState.S2C_BroadcastAction(ref Data);
m_Parent.NetState.ServerBroadcastAction(ref Data);
return true;
}

15
Assets/BossRoom/Scripts/Server/Game/State/ServerBossRoomState.cs


using System.Collections;
using System.Collections.Generic;
using BossRoom;
using System;
using MLAPI;
namespace BossRoom.Server

{
[SerializeField]
[Tooltip("Make sure this is included in the NetworkingManager's list of prefabs!")]
private NetworkedObject PlayerPrefab;
private NetworkedObject m_PlayerPrefab;
private NetworkedObject EnemyPrefab;
private NetworkedObject m_EnemyPrefab;
public override GameState ActiveState { get { return GameState.BOSSROOM; } }

private void SpawnPlayer(ulong clientId)
{
var NewPlayer = Instantiate(PlayerPrefab);
NewPlayer.SpawnAsPlayerObject(clientId);
var newPlayer = Instantiate(m_PlayerPrefab);
newPlayer.SpawnAsPlayerObject(clientId);
var NewEnemy = Instantiate(EnemyPrefab);
NewEnemy.SpawnWithOwnership(NetworkingManager.Singleton.LocalClientId);
var newEnemy = Instantiate(m_EnemyPrefab);
newEnemy.SpawnWithOwnership(NetworkingManager.Singleton.LocalClientId);
}
/// <summary>

19
Assets/BossRoom/Scripts/Server/Net/ServerGameNetPortal.cs


/// <summary>
/// Server logic plugin for the GameNetHub. Contains implementations for all GameNetHub's C2S RPCs.
/// </summary>
public class ServerGNHLogic : MonoBehaviour
public class ServerGameNetPortal : MonoBehaviour
private GameNetHub m_Hub;
private GameNetPortal m_Hub;
// note: MonoBehaviours' constructors are *never* called and this should be removed for clarity
public ServerGNHLogic(GameNetHub hub)
{
m_Hub = hub;
m_Hub.NetManager.ConnectionApprovalCallback += this.ApprovalCheck;
}
m_Hub = GetComponent<GameNetHub>();
m_Hub.NetworkStartEvent += this.NetworkStart;
m_Hub = GetComponent<GameNetPortal>();
m_Hub.NetworkStartEvent += NetworkStart;
m_Hub.NetManager.ConnectionApprovalCallback += this.ApprovalCheck;
m_Hub.NetManager.ConnectionApprovalCallback += ApprovalCheck;
}
public void NetworkStart()

this.enabled = false;
enabled = false;
}
else
{

20
Assets/BossRoom/Scripts/Server/ServerCharacterMovement.cs


[SerializeField]
private float m_MovementSpeed; // TODO [GOMPS-86] this should be assigned based on character definition
private void Awake()
{
m_NavMeshAgent = GetComponent<NavMeshAgent>();
m_NetworkCharacterState = GetComponent<NetworkCharacterState>();
m_CharLogic = GetComponent<ServerCharacter>();
m_Rigidbody = GetComponent<Rigidbody>();
m_NavigationSystem = GameObject.FindGameObjectWithTag(NavigationSystem.NavigationSytemTag).GetComponent<NavigationSystem>();
}
public override void NetworkStart()
{
if (!IsServer)

{
m_NavPath.Clear();
m_MovementState = MovementState.Idle;
}
private void Awake()
{
m_NavMeshAgent = GetComponent<NavMeshAgent>();
m_NetworkCharacterState = GetComponent<NetworkCharacterState>();
m_CharLogic = GetComponent<ServerCharacter>();
m_Rigidbody = GetComponent<Rigidbody>();
m_NavigationSystem = GameObject.FindGameObjectWithTag(NavigationSystem.NavigationSytemTag).GetComponent<NavigationSystem>();
}
private void FixedUpdate()

69
Assets/BossRoom/Scripts/Shared/Game/Action/ActionRequestData.cs


using System.Collections;
using System.Collections.Generic;
using System.IO;
using UnityEngine;
namespace BossRoom

RANGEDTARGETED,
CHASE,
//O__O adding a new ActionLogic branch? Update Action.MakeAction!
//O__O adding a new ActionLogic type? Update Action.MakeAction!
}
/// <summary>

{new ActionDescription{Logic=ActionLogic.CHASE } }
}
}
};
}

/// the Action gets played, and also what gets sent server->client to broadcast the action event. Note that the OUTCOMES of the action effect
/// don't ride along with this object when it is broadcast to clients; that information is sync'd separately, usually by NetworkedVars.
/// </summary>
public struct ActionRequestData
public struct ActionRequestData : MLAPI.Serialization.IBitWritable
{
public ActionType ActionTypeEnum; //the action to play.
public Vector3 Position; //center position of skill, e.g. "ground zero" of a fireball skill.

public float Amount; //can mean different things depending on the Action. For a ChaseAction, it will be target range the ChaseAction is trying to achieve.
public bool ShouldQueue; //if true, this action should queue. If false, it should clear all current actions and play immediately.
//O__O Hey, are you adding something? Be sure to update ActionLogicInfo and NetworkCharacterState.SerializeAction, RecvDoAction as well.
//O__O Hey, are you adding something? Be sure to update ActionLogicInfo, as well as the methods below.
public void Read(Stream stream)
{
using (var reader = MLAPI.Serialization.Pooled.PooledBitReader.Get(stream))
{
ActionTypeEnum = (ActionType)reader.ReadInt16();
ShouldQueue = reader.ReadBool();
var Logic = ActionData.ActionDescriptions[ActionTypeEnum][0].Logic;
var Info = ActionData.LogicInfos[Logic];
if (Info.HasPosition)
{
Position = reader.ReadVector3();
}
if (Info.HasDirection)
{
Direction = reader.ReadVector3();
}
if (Info.HasTarget)
{
TargetIds = reader.ReadULongArray();
}
if (Info.HasAmount)
{
Amount = reader.ReadSingle();
}
}
}
public void Write(Stream stream)
{
using (var writer = MLAPI.Serialization.Pooled.PooledBitWriter.Get(stream))
{
ActionLogic Logic = ActionData.ActionDescriptions[ActionTypeEnum][0].Logic;
ActionLogicInfo Info = ActionData.LogicInfos[Logic];
writer.WriteInt16((short)ActionTypeEnum);
writer.WriteBool(ShouldQueue);
if (Info.HasPosition)
{
writer.WriteVector3(Position);
}
if (Info.HasDirection)
{
writer.WriteVector3(Direction);
}
if (Info.HasTarget)
{
writer.WriteULongArray(TargetIds);
}
if (Info.HasAmount)
{
writer.WriteSingle(Amount);
}
}
}
}
}

2
Assets/BossRoom/Scripts/Shared/Net/GameNetPortal.cs


/// in player prefs, so it persists across sessions of the game.
/// </remarks>
///
public class GameNetHub : MonoBehaviour
public class GameNetPortal : MonoBehaviour
{
public GameObject NetworkingManagerGO;

78
Assets/BossRoom/Scripts/Shared/NetworkCharacterState.cs


/// Client->Server RPC that sends a request to play an action.
/// </summary>
/// <param name="data">Data about which action to play an dits associated details. </param>
public void C2S_DoAction(ref ActionRequestData data)
public void ClientSendActionRequest(ref ActionRequestData data)
SerializeAction(ref data, stream);
data.Write(stream);
InvokeServerRpcPerformance(RecvDoActionServer, stream);
}
}

/// </summary>
/// <param name="data">The data associated with this Action, including what action type it is.</param>
public void S2C_BroadcastAction(ref ActionRequestData data )
public void ServerBroadcastAction(ref ActionRequestData data )
SerializeAction(ref data, stream);
data.Write(stream);
private void SerializeAction( ref ActionRequestData data, PooledBitStream stream )
{
var Logic = ActionData.ActionDescriptions[data.ActionTypeEnum][0].Logic;
var Info = ActionData.LogicInfos[Logic];
using (PooledBitWriter writer = PooledBitWriter.Get(stream))
{
writer.WriteInt16((short)data.ActionTypeEnum);
writer.WriteBool(data.ShouldQueue);
if( Info.HasPosition )
{
writer.WriteVector3(data.Position);
}
if (Info.HasDirection)
{
writer.WriteVector3(data.Direction);
}
if (Info.HasTarget )
{
writer.WriteULongArray(data.TargetIds);
}
if( Info.HasAmount )
{
writer.WriteSingle(data.Amount);
}
}
}
ActionRequestData data = RecvDoAction(clientId, stream);
var data = new ActionRequestData();
data.Read(stream);
DoActionEventClient?.Invoke(data);
}

ActionRequestData data = RecvDoAction(clientId, stream);
var data = new ActionRequestData();
data.Read(stream);
private ActionRequestData RecvDoAction(ulong clientId, Stream stream )
{
ActionRequestData data = new ActionRequestData();
using (PooledBitReader reader = PooledBitReader.Get(stream))
{
data.ActionTypeEnum = (ActionType)reader.ReadInt16();
data.ShouldQueue = reader.ReadBool();
var Logic = ActionData.ActionDescriptions[data.ActionTypeEnum][0].Logic;
var Info = ActionData.LogicInfos[Logic];
if (Info.HasPosition)
{
data.Position = reader.ReadVector3();
}
if (Info.HasDirection)
{
data.Direction = reader.ReadVector3();
}
if (Info.HasTarget)
{
data.TargetIds = reader.ReadULongArray();
}
if (Info.HasAmount)
{
data.Amount = reader.ReadSingle();
}
}
return data;
}
}
}

8
Packages/packages-lock.json


"com.unity.multiplayer.mlapi": "0.0.1-preview.1"
}
},
"com.unity.multiplayer.transport.photon-realtime": {
"version": "file:com.unity.multiplayer.transport.photon-realtime",
"depth": 0,
"source": "embedded",
"dependencies": {
"com.unity.multiplayer.mlapi": "0.0.1-preview.1"
}
},
"com.unity.nuget.newtonsoft-json": {
"version": "2.0.0-preview",
"depth": 3,

44
ProjectSettings/DynamicsManager.asset


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!55 &1
PhysicsManager:
m_ObjectHideFlags: 0
serializedVersion: 13
m_Gravity: {x: 0, y: -9.81, z: 0}
m_DefaultMaterial: {fileID: 0}
m_BounceThreshold: 2
m_DefaultMaxDepenetrationVelocity: 10
m_SleepThreshold: 0.005
m_DefaultContactOffset: 0.01
m_DefaultSolverIterations: 6
m_DefaultSolverVelocityIterations: 1
m_QueriesHitBackfaces: 0
m_QueriesHitTriggers: 1
m_EnableAdaptiveForce: 0
m_ClothInterCollisionDistance: 0
m_ClothInterCollisionStiffness: 0
m_ContactsGeneration: 1
m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
m_AutoSimulation: 1
m_AutoSyncTransforms: 0
m_ReuseCollisionCallbacks: 1
m_ClothInterCollisionSettingsToggle: 0
m_ClothGravity: {x: 0, y: -9.81, z: 0}
m_ContactPairsMode: 0
m_BroadphaseType: 0
m_WorldBounds:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 250, y: 250, z: 250}
m_WorldSubdivisions: 8
m_FrictionType: 0
m_EnableEnhancedDeterminism: 0
m_EnableUnifiedHeightmaps: 1
m_SolverType: 0
m_DefaultMaxAngularSpeed: 7
version https://git-lfs.github.com/spec/v1
<<<<<<< HEAD
oid sha256:6b038dff54fe753d292312952df32e7849e935c974d81371c11dfef9f1b2fa99
=======
oid sha256:55c4895b2ce23c046b46cbcfb73397df74d08a4c3cc974fc60c408080cfc2ebd
>>>>>>> develop
size 1289

59
ProjectSettings/GraphicsSettings.asset


m_LensFlare:
m_Mode: 1
m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0}
m_VideoShadersIncludeMode: 2
m_AlwaysIncludedShaders:
- {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
- {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}

- {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
m_PreloadedShaders: []
m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000,
type: 0}
m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
m_TierSettings: []
m_TierSettings:
- serializedVersion: 5
m_BuildTarget: 1
m_Tier: 0
m_Settings:
standardShaderQuality: 2
renderingPath: 3
hdrMode: 1
realtimeGICPUUsage: 25
useReflectionProbeBoxProjection: 1
useReflectionProbeBlending: 1
useHDR: 1
useDetailNormalMap: 1
useCascadedShadowMaps: 1
prefer32BitShadowMaps: 0
enableLPPV: 1
useDitherMaskForAlphaBlendedShadows: 1
m_Automatic: 0
- serializedVersion: 5
m_BuildTarget: 1
m_Tier: 1
m_Settings:
standardShaderQuality: 2
renderingPath: 3
hdrMode: 1
realtimeGICPUUsage: 25
useReflectionProbeBoxProjection: 1
useReflectionProbeBlending: 1
useHDR: 1
useDetailNormalMap: 1
useCascadedShadowMaps: 1
prefer32BitShadowMaps: 0
enableLPPV: 1
useDitherMaskForAlphaBlendedShadows: 1
m_Automatic: 0
- serializedVersion: 5
m_BuildTarget: 1
m_Tier: 2
m_Settings:
standardShaderQuality: 2
renderingPath: 3
hdrMode: 1
realtimeGICPUUsage: 50
useReflectionProbeBoxProjection: 1
useReflectionProbeBlending: 1
useHDR: 1
useDetailNormalMap: 1
useCascadedShadowMaps: 1
prefer32BitShadowMaps: 0
enableLPPV: 1
useDitherMaskForAlphaBlendedShadows: 1
m_Automatic: 0
m_LightmapStripping: 0
m_FogStripping: 0
m_InstancingStripping: 0

m_AlbedoSwatchInfos: []
m_LightsUseLinearIntensity: 0
m_LightsUseColorTemperature: 0
m_DefaultRenderingLayerMask: 1
m_AllowEnlightenSupportForUpgradedProject: 0

12
ProjectSettings/ProjectSettings.asset


--- !u!129 &1
PlayerSettings:
m_ObjectHideFlags: 0
serializedVersion: 21
serializedVersion: 22
productGUID: f567921ecfe8011459dca48042d0d565
AndroidProfiler: 0
AndroidFilterTouchesWhenObscured: 0

metalEditorSupport: 1
metalAPIValidation: 1
iOSRenderExtraFrameOnPause: 0
iosCopyPluginsCodeInsteadOfSymlink: 0
appleDeveloperTeamID:
iOSManualSigningProvisioningProfileID:
tvOSManualSigningProvisioningProfileID:

iOSRequireARKit: 0
iOSAutomaticallyDetectAndAddCapabilities: 1
appleEnableProMotion: 0
shaderPrecisionModel: 0
clonedFromGUID: c0afd0d1d80e3634a9dac47e8a0426ea
templatePackageId: com.unity.template.3d@5.0.4
templateDefaultScene: Assets/Scenes/SampleScene.unity

28: UNITY_POST_PROCESSING_STACK_V2
29: UNITY_POST_PROCESSING_STACK_V2
30: UNITY_POST_PROCESSING_STACK_V2
additionalCompilerArguments: {}
suppressCommonWarnings: 1
allowUnsafeCode: 0
useDeterministicCompilation: 1
useReferenceAssemblies: 1

Standalone: 6
m_RenderingPath: 1
m_MobileRenderingPath: 1
metroPackageName: Template_3D
metroPackageVersion:
metroPackageName: Template3D
metroPackageVersion: 1.0.0.0
metroCertificatePath:
metroCertificatePassword:
metroCertificateSubject:

wsaImages: {}
metroTileShortName:
metroTileShortName: com.unity.multiplayer.samples.coop
metroTileShowName: 0
metroMediumTileShowName: 0
metroLargeTileShowName: 0

79
Assets/BossRoom/Material/Characters/Enemy_Eyes_sheet.mat


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Enemy_Eyes_sheet
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _ALPHATEST_ON _EMISSION
m_LightmapFlags: 2
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 2450
stringTagMap:
RenderType: TransparentCutout
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 2800000, guid: 13af2bcf110ace445a889edec9e5ac9b, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: 13af2bcf110ace445a889edec9e5ac9b, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 1
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.5, g: 0.5, b: 0.5, a: 1}
- _EmissionColor: {r: 0.27450982, g: 0.27450982, b: 0.27450982, a: 1}
m_BuildTextureStacks: []

8
Assets/BossRoom/Material/Characters/Enemy_Eyes_sheet.mat.meta


fileFormatVersion: 2
guid: 6ad0d134720fa434484b249c9074eeb0
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

84
Assets/BossRoom/Material/Characters/Enemy_Mouth_sheet.mat


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Enemy_Mouth_sheet
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _ALPHATEST_ON
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 2450
stringTagMap:
RenderType: TransparentCutout
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: da41a6d3ad30372479c481f8bfff7071, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 1
- _OcclusionStrength: 1
- _Parallax: 0.02
- _RimAmount: 0.716
- _RimThreshold: 0.1
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _AmbientColor: {r: 0.4, g: 0.4, b: 0.4, a: 1}
- _Color: {r: 0.5, g: 0.5, b: 0.5, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _RimColor: {r: 1, g: 1, b: 1, a: 1}
- _SpecularColor: {r: 0.9, g: 0.9, b: 0.9, a: 1}
m_BuildTextureStacks: []

8
Assets/BossRoom/Material/Characters/Enemy_Mouth_sheet.mat.meta


fileFormatVersion: 2
guid: a9b71f18744318a4896a6260c48c6aa0
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

83
Assets/BossRoom/Material/Characters/ToonTest/Head_Imp.mat


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Head_Imp
m_Shader: {fileID: 4800000, guid: 41c49b64d906a384cab2d953a43231e3, type: 3}
m_ShaderKeywords: _NORMALMAP
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 2800000, guid: 6241db63cd35e7a47bdbc327c5058789, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: 1ecd26af9e83eea43bc1e405b211c328, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 2.89
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _RimAmount: 0.667
- _RimThreshold: 0.23
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _AmbientColor: {r: 0.4528302, g: 0.4528302, b: 0.4528302, a: 1}
- _Color: {r: 0.5, g: 0.5, b: 0.5, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _RimColor: {r: 0.4245283, g: 0.4245283, b: 0.4245283, a: 1}
- _SpecularColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
m_BuildTextureStacks: []

8
Assets/BossRoom/Material/Characters/ToonTest/Head_Imp.mat.meta


fileFormatVersion: 2
guid: a45d29b968f5fdb4ba2ecc2663c4b196
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

83
Assets/BossRoom/Material/Characters/ToonTest/Torso_Imp.mat


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Torso_Imp
m_Shader: {fileID: 4800000, guid: 41c49b64d906a384cab2d953a43231e3, type: 3}
m_ShaderKeywords: _NORMALMAP
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 2800000, guid: 2fa499f9cfde15e4599f73e73c1e9fb5, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: ece5e2f831fb60748a74628c3252373d, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: -2.86
- _GlossyReflections: 1
- _Metallic: 0.57
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _RimAmount: 0.208
- _RimThreshold: 0.595
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _AmbientColor: {r: 0.16981131, g: 0.16981131, b: 0.16981131, a: 1}
- _Color: {r: 0.20754719, g: 0.20754719, b: 0.20754719, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _RimColor: {r: 1, g: 1, b: 1, a: 1}
- _SpecularColor: {r: 3.137255, g: 3.137255, b: 3.137255, a: 1}
m_BuildTextureStacks: []

8
Assets/BossRoom/Material/Characters/ToonTest/Torso_Imp.mat.meta


fileFormatVersion: 2
guid: 96b9bdf113bb571429304e360eb36f7b
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

408
Assets/BossRoom/Models/BossSetController.controller


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!206 &-8988982740543935465
BlendTree:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Blend Tree
m_Childs:
- serializedVersion: 2
m_Motion: {fileID: -7893011869332588236, guid: 2115c4661f55eff45a5a0f91fc0a12f0, type: 3}
m_Threshold: 0
m_Position: {x: 0, y: 0}
m_TimeScale: 1
m_CycleOffset: 0
m_DirectBlendParameter: Blend
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -3419257869308726280, guid: 2115c4661f55eff45a5a0f91fc0a12f0, type: 3}
m_Threshold: 0.5
m_Position: {x: 0, y: 0}
m_TimeScale: 1
m_CycleOffset: 0
m_DirectBlendParameter: Blend
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: 6200578666267062213, guid: 2115c4661f55eff45a5a0f91fc0a12f0, type: 3}
m_Threshold: 1
m_Position: {x: 0, y: 0}
m_TimeScale: 1
m_CycleOffset: 0
m_DirectBlendParameter: Blend
m_Mirror: 0
m_BlendParameter: Speed
m_BlendParameterY: Blend
m_MinThreshold: 0
m_MaxThreshold: 1
m_UseAutomaticThresholds: 1
m_NormalizedBlendValues: 0
m_BlendType: 0
--- !u!206 &-8142562342497625493
BlendTree:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: BlendTree
m_Childs: []
m_BlendParameter: Blend
m_BlendParameterY: Blend
m_MinThreshold: 0
m_MaxThreshold: 1
m_UseAutomaticThresholds: 1
m_NormalizedBlendValues: 0
m_BlendType: 0
--- !u!1101 &-5603320215398779609
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 6
m_ConditionEvent: AttackID
m_EventTreshold: 1
- m_ConditionMode: 1
m_ConditionEvent: BeginAttack
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 6299315480180736668}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.75
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &-3576141394984483750
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions: []
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -1068572555509609370}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.75
m_HasExitTime: 1
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1102 &-3516404760485336223
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: WalkRun
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: -8988982740543935465}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!206 &-2485547222415692489
BlendTree:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: BlendTree
m_Childs: []
m_BlendParameter: Blend
m_BlendParameterY: Blend
m_MinThreshold: 0
m_MaxThreshold: 1
m_UseAutomaticThresholds: 1
m_NormalizedBlendValues: 0
m_BlendType: 0
--- !u!1101 &-2134875305200649429
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions: []
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 0}
m_Solo: 0
m_Mute: 0
m_IsExit: 1
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.8125
m_HasExitTime: 1
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1102 &-1068572555509609370
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: NoAttack
m_Speed: 1
m_CycleOffset: 0
m_Transitions:
- {fileID: -5603320215398779609}
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 0}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1107 &-881976854541045011
AnimatorStateMachine:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Base Layer
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: -3516404760485336223}
m_Position: {x: 180, y: 150, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []
m_AnyStatePosition: {x: 400, y: 20, z: 0}
m_EntryPosition: {x: 120, y: 20, z: 0}
m_ExitPosition: {x: 490, y: 390, z: 0}
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
m_DefaultState: {fileID: -3516404760485336223}
--- !u!91 &9100000
AnimatorController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: BossSetController
serializedVersion: 5
m_AnimatorParameters:
- m_Name: ForwardMovement
m_Type: 3
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 9100000}
- m_Name: Speed
m_Type: 1
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 9100000}
- m_Name: AttackID
m_Type: 3
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 9100000}
- m_Name: BeginAttack
m_Type: 9
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 9100000}
m_AnimatorLayers:
- serializedVersion: 5
m_Name: Base Layer
m_StateMachine: {fileID: -881976854541045011}
m_Mask: {fileID: 0}
m_Motions: []
m_Behaviours: []
m_BlendingMode: 0
m_SyncedLayerIndex: -1
m_DefaultWeight: 0
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
- serializedVersion: 5
m_Name: Attacks
m_StateMachine: {fileID: 8124319401456280373}
m_Mask: {fileID: 31900000, guid: ecd32f7d18cc2ad4a9cdc919451abce5, type: 2}
m_Motions: []
m_Behaviours: []
m_BlendingMode: 0
m_SyncedLayerIndex: -1
m_DefaultWeight: 1
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1107 &2782526268344220699
AnimatorStateMachine:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: New Layer
m_ChildStates: []
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []
m_AnyStatePosition: {x: 50, y: 20, z: 0}
m_EntryPosition: {x: 50, y: 120, z: 0}
m_ExitPosition: {x: 800, y: 120, z: 0}
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
m_DefaultState: {fileID: 0}
--- !u!1101 &3218047883308753838
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions: []
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 0}
m_Solo: 0
m_Mute: 0
m_IsExit: 1
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.8125
m_HasExitTime: 1
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &5593412509193387231
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 4
m_ConditionEvent: ForwardMovement
m_EventTreshold: 1
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 0}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.8125
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1109 &6002482201662273439
AnimatorTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions: []
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 0}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 1
--- !u!1102 &6299315480180736668
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Attack1
m_Speed: 1
m_CycleOffset: 0
m_Transitions:
- {fileID: -3576141394984483750}
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 3193645972815305343, guid: 2115c4661f55eff45a5a0f91fc0a12f0, type: 3}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1107 &8124319401456280373
AnimatorStateMachine:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Attacks
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: -1068572555509609370}
m_Position: {x: 240, y: 90, z: 0}
- serializedVersion: 1
m_State: {fileID: 6299315480180736668}
m_Position: {x: 40, y: 220, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []
m_AnyStatePosition: {x: 50, y: 20, z: 0}
m_EntryPosition: {x: 50, y: 120, z: 0}
m_ExitPosition: {x: 800, y: 120, z: 0}
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
m_DefaultState: {fileID: -1068572555509609370}

8
Assets/BossRoom/Models/BossSetController.controller.meta


fileFormatVersion: 2
guid: 259c0c92d6badb54bb032df749609d27
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

1001
Assets/BossRoom/Prefabs/Character/Boss.prefab
文件差异内容过多而无法显示
查看文件

7
Assets/BossRoom/Prefabs/Character/Boss.prefab.meta


fileFormatVersion: 2
guid: 1e8ae28d24c5683478548d7e96e5ba55
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

1001
Assets/BossRoom/Prefabs/Character/Imp.prefab
文件差异内容过多而无法显示
查看文件

7
Assets/BossRoom/Prefabs/Character/Imp.prefab.meta


fileFormatVersion: 2
guid: 1ffde884792e9a44a9fbe049ebb79c9f
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

1
Assets/BossRoom/Textures/Characters/Imp_Head_CLR.tga
文件差异内容过多而无法显示
查看文件

96
Assets/BossRoom/Textures/Characters/Imp_Head_CLR.tga.meta


fileFormatVersion: 2
guid: 1ecd26af9e83eea43bc1e405b211c328
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -100
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

1001
Assets/BossRoom/Textures/Characters/Imp_Torso_CLR.tga
文件差异内容过多而无法显示
查看文件

96
Assets/BossRoom/Textures/Characters/Imp_Torso_CLR.tga.meta


fileFormatVersion: 2
guid: ece5e2f831fb60748a74628c3252373d
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -100
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

29
Assets/BossRoom/Scripts/Development/dgtest/Animate_Walk.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Animate_Walk : MonoBehaviour
{
Animator anim;
// Start is called before the first frame update
void Start()
{
anim = GetComponent<Animator>();
}
// Update is called once per frame
void Update()
{
if (Input.GetKeyDown(KeyCode.Space))
{
//anim.enabled = false;
toggleAnimation();
//anim.enabled = true;
}
}
public void toggleAnimation()
{ anim.SetTrigger("Toggle"); }
}

11
Assets/BossRoom/Scripts/Development/dgtest/Animate_Walk.cs.meta


fileFormatVersion: 2
guid: 00e279cdb451120428f0add9ca0cd769
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

11
Assets/BossRoom/Scripts/Development/dgtest/GameManager.cs.meta


fileFormatVersion: 2
guid: 4c360cb54a0c27f41b0bb4d88fdb4003
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

27
Assets/BossRoom/Scripts/Development/dgtest/GroundDiscManager.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class GroundDiscManager : MonoBehaviour
{
public GameObject normalDisc;
public GameObject seeThroughDisc;
// Update is called once per frame
void Update()
{
int layer = LayerMask.NameToLayer("Wall");
int mask = 1 << layer;
if (Physics.Raycast(transform.position, transform.TransformDirection(Vector3.forward), 40, mask))
{
normalDisc.SetActive(false);
seeThroughDisc.SetActive(true);
}
else
{
normalDisc.SetActive(true);
seeThroughDisc.SetActive(false);
}
}
}

11
Assets/BossRoom/Scripts/Development/dgtest/GroundDiscManager.cs.meta


fileFormatVersion: 2
guid: 0382c339af9e0884a9a173c89e898cd4
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

40
Assets/BossRoom/Scripts/Development/dgtest/MainMenuFX.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MainMenuFX : MonoBehaviour
{
private GameObject m_backdrop;
private float m_xbase;
private float m_start;
// Start is called before the first frame update
void Start()
{
m_backdrop = GameObject.Find("MainMenuBackdrop");
m_xbase = ((RectTransform)m_backdrop.transform).anchoredPosition.x;
m_start = UnityEngine.Time.time;
}
// Update is called once per frame
void Update()
{
//do a little sway on the backdrop.
float elapsed = UnityEngine.Time.time - m_start;
float offset = 15*Mathf.Sin(0.4f * elapsed);
RectTransform t = (RectTransform)m_backdrop.transform;
var pos = t.anchoredPosition;
pos.x = m_xbase + offset;
t.anchoredPosition = pos;
//t.anchoredPosition.Set(m_xbase + offset, t.anchoredPosition.y);
//t.ForceUpdateRectTransforms();
//m_backdrop.transform.position.Set(m_start + offset, m_backdrop.transform.position.y, m_backdrop.transform.position.z);
}
}

11
Assets/BossRoom/Scripts/Development/dgtest/MainMenuFX.cs.meta


fileFormatVersion: 2
guid: d2e6fc04c9e0f7041aaf6735bd5913e9
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

11
Assets/BossRoom/Scripts/Development/dgtest/MainMenuManager.cs.meta


fileFormatVersion: 2
guid: 83806e67e25160a4fb0432b5352f640e
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

8
Assets/BossRoom/Scripts/Development/dgtest/Movement.meta


fileFormatVersion: 2
guid: 42e68b1b83b2dcf4a857d11e57c64394
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

11
Assets/BossRoom/Scripts/Development/dgtest/ProgramState.cs.meta


fileFormatVersion: 2
guid: 67d8cda0e4ca65f4f94a76f0259b62d0
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

2
Assets/BossRoom/Scripts/Development/dgtest/README.txt


These are script files pulled over from the Storm Flag art repo.
They will either need to be deleted or moved to their proper place in the tree as part of a subsequent cleanup pass.

7
Assets/BossRoom/Scripts/Development/dgtest/README.txt.meta


fileFormatVersion: 2
guid: e06d4bfbc665e474dad02fecb555ed4f
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

125
Assets/BossRoom/Scripts/Development/dgtest/SimpleInputMover.cs


using Cinemachine;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SimpleInputMover : MonoBehaviour
{
public float TurnSpeed = 80; // degrees per second
public float WalkSpeed = 2.0f; // meters per second
public float RunSpeed = 4.0f; // meters per second
public float StrafeSpeed = 1.0f; // meters per second
public float MinZoomDistance = 3;
public float MaxZoomDistance = 10;
public float ZoomSpeed = 3;
public CinemachineVirtualCamera VirtualCam;
private CharacterController controller;
private Animator animator;
private void Awake()
{
controller = GetComponent<CharacterController>();
animator = GetComponentInChildren<Animator>();
}
// Update is called once per frame
private void Update()
{
bool isRunning = !Input.GetKey(KeyCode.LeftShift) && !Input.GetKey(KeyCode.RightShift);
float horizontalMove = 0;
float verticalMove = 0;
float rotateSpeed = 0;
float animateMovement = 0;
if (Input.GetKey(KeyCode.W) || Input.GetKey(KeyCode.UpArrow))
{
if (isRunning)
{
verticalMove = -RunSpeed;
animateMovement = 1;
}
else
{
verticalMove = -WalkSpeed;
animateMovement = 0.5f;
}
}
else if (Input.GetKey(KeyCode.S) || Input.GetKey(KeyCode.DownArrow))
{
if (isRunning)
{
verticalMove = RunSpeed;
animateMovement = 1f;
}
else
{
verticalMove = WalkSpeed;
animateMovement = 0.5f;
}
}
if (Input.GetKey(KeyCode.Q))
{
horizontalMove = StrafeSpeed;
}
else if (Input.GetKey(KeyCode.E))
{
horizontalMove = -StrafeSpeed;
}
if (Input.GetKey(KeyCode.A) || Input.GetKey(KeyCode.LeftArrow))
{
rotateSpeed = -TurnSpeed;
}
if (Input.GetKey(KeyCode.D) || Input.GetKey(KeyCode.RightArrow))
{
rotateSpeed = TurnSpeed;
}
controller.transform.Rotate(0, rotateSpeed * Time.deltaTime, 0);
controller.SimpleMove(transform.TransformDirection(new Vector3(horizontalMove, 0, verticalMove)));
UpdateMoveAnimation(animateMovement);
if (Input.GetKeyDown(KeyCode.Space))
{
BeginAttackAnimation(1);
}
float scroll = Input.GetAxis("Mouse ScrollWheel");
if (scroll != 0 && VirtualCam)
ZoomCamera(scroll);
}
private void UpdateMoveAnimation(float movementSpeed)
{
animator.SetFloat("Speed", movementSpeed);
}
private void BeginAttackAnimation(int attackAnimationID)
{
animator.SetInteger("AttackID", attackAnimationID);
animator.SetTrigger("BeginAttack");
}
private void ZoomCamera(float scroll)
{
CinemachineComponentBase[] components = VirtualCam.GetComponentPipeline();
foreach (CinemachineComponentBase component in components)
{
if (component is CinemachineFramingTransposer)
{
CinemachineFramingTransposer c = (CinemachineFramingTransposer)component;
c.m_CameraDistance += -scroll * ZoomSpeed;
if (c.m_CameraDistance < MinZoomDistance)
c.m_CameraDistance = MinZoomDistance;
if (c.m_CameraDistance > MaxZoomDistance)
c.m_CameraDistance = MaxZoomDistance;
}
}
}
}

11
Assets/BossRoom/Scripts/Development/dgtest/SimpleInputMover.cs.meta


fileFormatVersion: 2
guid: cffed25df0931424cbdf62ca740aded2
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

23
Assets/BossRoom/Scripts/Development/dgtest/GameManager.cs


using MLAPI;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class GameManager : MonoBehaviour
{
private GameObject m_playerSpawn;
private List<GameObject> m_players = new List<GameObject>(10);
public GameObject PlayerPrefab;
// Start is called before the first frame update
void Start()
{
m_playerSpawn = GameObject.Find("SpawnPoint");
GameObject main_player = Instantiate(PlayerPrefab);
main_player.transform.position = m_playerSpawn.transform.position;
main_player.GetComponent<NetworkedObject>().Spawn();
}
}

36
Assets/BossRoom/Scripts/Development/dgtest/MainMenuManager.cs


using MLAPI;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
public class MainMenuManager : MonoBehaviour
{
private NetworkingManager m_netManager;
// Start is called before the first frame update
void Start()
{
m_netManager = GameObject.Find("NetworkHost").GetComponent<NetworkingManager>();
if(!m_netManager)
{
throw new System.Exception("MainMenuManager requires the presence of a NetworkHost");
}
//and mark the NetworkHost as persistent.
GameObject.DontDestroyOnLoad(m_netManager.gameObject);
Application.targetFrameRate = 60;
}
public void OnHostButton()
{
m_netManager.StartServer();
ProgramState.Instance.IsHost = true;
SceneManager.LoadScene("unitychan_test", LoadSceneMode.Single);
}
public void OnConnectButton()
{
}
}

34
Assets/BossRoom/Scripts/Development/dgtest/ProgramState.cs


using MLAPI;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// ProgramState is a persistent class and GameObject that lives across all scenes. It is used to pass state across scene transition boundaries.
/// </summary>
public class ProgramState : MonoBehaviour
{
public bool IsHost = false;
//NetworkingManager is contained on the NetworkHost, which is also a persistent GameObject.
private NetworkingManager m_netManager;
public static ProgramState Instance;
public NetworkingManager NetManager { get { return m_netManager; } }
/// <summary>
/// The synchronized network time (in seconds, since the server started).
/// </summary>
public float NetTime { get { return m_netManager.NetworkTime; } }
// Start is called before the first frame update
void Start()
{
GameObject.DontDestroyOnLoad(this.gameObject);
Instance = this;
m_netManager = GameObject.Find("NetworkHost").GetComponent<NetworkingManager>();
}
}

/Assets/BossRoom/Prefabs/Character/Boss2.prefab.meta → /Assets/BossRoom/Prefabs/Character/Boss_deprecated.prefab.meta

/Assets/BossRoom/Prefabs/Character/Boss2.prefab → /Assets/BossRoom/Prefabs/Character/Boss_deprecated.prefab

/Assets/BossRoom/Scripts/Client/Net/ClientGNHLogic.cs.meta → /Assets/BossRoom/Scripts/Client/Net/ClientGameNetPortal.cs.meta

/Assets/BossRoom/Scripts/Client/Net/ClientGNHLogic.cs → /Assets/BossRoom/Scripts/Client/Net/ClientGameNetPortal.cs

/Assets/BossRoom/Scripts/Server/Net/ServerGNHLogic.cs.meta → /Assets/BossRoom/Scripts/Server/Net/ServerGameNetPortal.cs.meta

/Assets/BossRoom/Scripts/Server/Net/ServerGNHLogic.cs → /Assets/BossRoom/Scripts/Server/Net/ServerGameNetPortal.cs

/Assets/BossRoom/Scripts/Shared/Net/GameNetHub.cs.meta → /Assets/BossRoom/Scripts/Shared/Net/GameNetPortal.cs.meta

/Assets/BossRoom/Scripts/Shared/Net/GameNetHub.cs → /Assets/BossRoom/Scripts/Shared/Net/GameNetPortal.cs

部分文件因为文件数量过多而无法显示

正在加载...
取消
保存