A team game with an emphasis on movement (with no shooting), inspired by Overwatch and Zineth

259 lines
6.4 KiB

  1. [gd_scene load_steps=7 format=2]
  2. [ext_resource path="res://scripts/player.gd" type="Script" id=1]
  3. [ext_resource path="res://scripts/tp_camera.gd" type="Script" id=2]
  4. [sub_resource type="CapsuleShape" id=1]
  5. radius = 0.4
  6. height = 0.5
  7. [sub_resource type="RayShape" id=2]
  8. length = 0.1
  9. _sections_unfolded = [ "Resource" ]
  10. [sub_resource type="PrismMesh" id=3]
  11. left_to_right = 0.5
  12. size = Vector3( 0.5, 0.5, 0.5 )
  13. subdivide_width = 0
  14. subdivide_height = 0
  15. subdivide_depth = 0
  16. [sub_resource type="CapsuleMesh" id=4]
  17. radius = 0.4
  18. mid_height = 0.1
  19. radial_segments = 64
  20. rings = 8
  21. _sections_unfolded = [ "Resource" ]
  22. [sub_resource type="SpatialMaterial" id=5]
  23. render_priority = 0
  24. flags_transparent = false
  25. flags_unshaded = false
  26. flags_vertex_lighting = false
  27. flags_no_depth_test = false
  28. flags_use_point_size = false
  29. flags_world_triplanar = false
  30. flags_fixed_size = false
  31. flags_albedo_tex_force_srgb = false
  32. vertex_color_use_as_albedo = false
  33. vertex_color_is_srgb = false
  34. params_diffuse_mode = 0
  35. params_specular_mode = 0
  36. params_blend_mode = 0
  37. params_cull_mode = 0
  38. params_depth_draw_mode = 0
  39. params_line_width = 1.0
  40. params_point_size = 1.0
  41. params_billboard_mode = 0
  42. params_grow = false
  43. params_use_alpha_scissor = false
  44. albedo_color = Color( 1, 1, 1, 1 )
  45. metallic = 0.0
  46. metallic_specular = 0.5
  47. metallic_texture_channel = 0
  48. roughness = 0.0
  49. roughness_texture_channel = 0
  50. emission_enabled = false
  51. normal_enabled = false
  52. rim_enabled = false
  53. clearcoat_enabled = false
  54. anisotropy_enabled = false
  55. ao_enabled = false
  56. depth_enabled = false
  57. subsurf_scatter_enabled = false
  58. transmission_enabled = false
  59. refraction_enabled = false
  60. detail_enabled = false
  61. uv1_scale = Vector3( 1, 1, 1 )
  62. uv1_offset = Vector3( 0, 0, 0 )
  63. uv1_triplanar = false
  64. uv1_triplanar_sharpness = 1.0
  65. uv2_scale = Vector3( 1, 1, 1 )
  66. uv2_offset = Vector3( 0, 0, 0 )
  67. uv2_triplanar = false
  68. uv2_triplanar_sharpness = 1.0
  69. proximity_fade_enable = false
  70. distance_fade_enable = false
  71. _sections_unfolded = [ "Albedo", "Flags", "Parameters", "Vertex Color" ]
  72. [node name="RigidBody" type="RigidBody" index="0" groups=[
  73. "player",
  74. ]]
  75. input_ray_pickable = true
  76. input_capture_on_drag = false
  77. collision_layer = 4
  78. collision_mask = 5
  79. mode = 2
  80. mass = 200.0
  81. friction = 1.0
  82. bounce = 0.0
  83. gravity_scale = 1.0
  84. custom_integrator = false
  85. continuous_cd = true
  86. contacts_reported = 1
  87. contact_monitor = true
  88. sleeping = false
  89. can_sleep = false
  90. axis_lock_linear_x = false
  91. axis_lock_linear_y = false
  92. axis_lock_linear_z = false
  93. axis_lock_angular_x = false
  94. axis_lock_angular_y = false
  95. axis_lock_angular_z = false
  96. linear_velocity = Vector3( 0, 0, 0 )
  97. linear_damp = -1.0
  98. angular_velocity = Vector3( 0, 0, 0 )
  99. angular_damp = -1.0
  100. script = ExtResource( 1 )
  101. _sections_unfolded = [ "Angular", "Axis Lock", "Collision", "Linear", "Transform", "Visibility", "collision" ]
  102. [node name="Body" type="CollisionShape" parent="." index="0"]
  103. transform = Transform( 1, 0, 0, 0, -1.62921e-07, -1, 0, 1, -1.62921e-07, 0, 0.75, 0 )
  104. shape = SubResource( 1 )
  105. disabled = false
  106. _sections_unfolded = [ "Pause", "Transform", "Visibility" ]
  107. [node name="Leg" type="CollisionShape" parent="." index="1"]
  108. transform = Transform( 1, 0, 0, 0, -1.62921e-07, -1, 0, 1, -1.62921e-07, 0.05, 0.1, 0 )
  109. shape = SubResource( 2 )
  110. disabled = false
  111. _sections_unfolded = [ "Transform", "Visibility" ]
  112. [node name="Ray" type="RayCast" parent="." index="2"]
  113. transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.15, 0 )
  114. enabled = true
  115. exclude_parent = true
  116. cast_to = Vector3( 0, -0.2, 0 )
  117. collision_mask = 1
  118. _sections_unfolded = [ "Transform", "Visibility" ]
  119. [node name="Yaw" type="Spatial" parent="." index="3"]
  120. _sections_unfolded = [ "Transform" ]
  121. [node name="Pitch" type="Spatial" parent="Yaw" index="0"]
  122. transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.19053, 0 )
  123. _sections_unfolded = [ "Transform" ]
  124. [node name="RotatedHead" type="MeshInstance" parent="Yaw/Pitch" index="0"]
  125. transform = Transform( 2.65431e-14, -1.62921e-07, 1, -1, -1.62921e-07, 0, 1.62921e-07, -1, -1.62921e-07, 0, -0.0649133, -0.103671 )
  126. layers = 1
  127. material_override = null
  128. cast_shadow = 1
  129. extra_cull_margin = 0.0
  130. use_in_baked_light = false
  131. lod_min_distance = 0.0
  132. lod_min_hysteresis = 0.0
  133. lod_max_distance = 0.0
  134. lod_max_hysteresis = 0.0
  135. mesh = SubResource( 3 )
  136. skeleton = NodePath("..")
  137. material/0 = null
  138. _sections_unfolded = [ "Transform" ]
  139. [node name="MasterOnly" type="Node" parent="." index="4"]
  140. [node name="Crosshair" type="Label" parent="MasterOnly" index="0"]
  141. anchor_left = 0.5
  142. anchor_top = 0.5
  143. anchor_right = 0.5
  144. anchor_bottom = 0.5
  145. margin_left = -20.0
  146. margin_top = -7.0
  147. margin_right = 20.0
  148. margin_bottom = 7.0
  149. rect_pivot_offset = Vector2( 0, 0 )
  150. mouse_filter = 2
  151. mouse_default_cursor_shape = 0
  152. size_flags_horizontal = 1
  153. size_flags_vertical = 4
  154. text = "+"
  155. align = 1
  156. percent_visible = 1.0
  157. lines_skipped = 0
  158. max_lines_visible = -1
  159. _sections_unfolded = [ "Anchor", "Margin", "Rect" ]
  160. [node name="SwitchCharge" type="Label" parent="MasterOnly" index="1"]
  161. anchor_left = 0.5
  162. anchor_top = 1.0
  163. anchor_right = 0.5
  164. anchor_bottom = 1.0
  165. margin_left = -62.0
  166. margin_top = -98.0
  167. margin_right = 61.0
  168. margin_bottom = -84.0
  169. rect_pivot_offset = Vector2( 0, 0 )
  170. mouse_filter = 2
  171. mouse_default_cursor_shape = 0
  172. size_flags_horizontal = 1
  173. size_flags_vertical = 4
  174. align = 1
  175. percent_visible = 1.0
  176. lines_skipped = 0
  177. max_lines_visible = -1
  178. [node name="TPCamera" type="Spatial" parent="." index="5"]
  179. transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.56913, 0 )
  180. script = ExtResource( 2 )
  181. _sections_unfolded = [ "Transform" ]
  182. cam = NodePath("Camera")
  183. pivot = NodePath("Pivot")
  184. [node name="Pivot" type="Spatial" parent="TPCamera" index="0"]
  185. [node name="Camera" type="Camera" parent="TPCamera" index="1"]
  186. keep_aspect = 1
  187. cull_mask = 1048575
  188. environment = null
  189. h_offset = 0.0
  190. v_offset = 0.0
  191. doppler_tracking = 0
  192. projection = 0
  193. current = false
  194. fov = 70.0
  195. size = 1.0
  196. near = 0.05
  197. far = 100.0
  198. [node name="Ray" type="RayCast" parent="TPCamera/Camera" index="0"]
  199. enabled = true
  200. exclude_parent = true
  201. cast_to = Vector3( 0, 0, -100 )
  202. collision_mask = 1
  203. _sections_unfolded = [ "Transform" ]
  204. [node name="MainMesh" type="MeshInstance" parent="." index="6"]
  205. transform = Transform( 1, 0, 0, 0, -1.62921e-07, -1, 0, 1, -1.62921e-07, 0, 0.567933, 0 )
  206. layers = 1
  207. material_override = null
  208. cast_shadow = 1
  209. extra_cull_margin = 0.0
  210. use_in_baked_light = false
  211. lod_min_distance = 0.0
  212. lod_min_hysteresis = 0.0
  213. lod_max_distance = 0.0
  214. lod_max_hysteresis = 0.0
  215. mesh = SubResource( 4 )
  216. skeleton = NodePath("..")
  217. material/0 = SubResource( 5 )
  218. _sections_unfolded = [ "Transform", "material" ]