Sites
This commit is contained in:
parent
bd16f01192
commit
6422ffb13c
13 changed files with 142 additions and 5 deletions
|
|
@ -12,6 +12,8 @@ const DEFENCE_LAYER: int = 0b100000
|
|||
var player_nodes: Dictionary[int,Player] = {}
|
||||
|
||||
var dynamic_objects_spawner: MultiplayerSpawner
|
||||
var plants: Array[PlantSite]
|
||||
var plant_deadzones: Dictionary[StringName, Area3D]
|
||||
|
||||
## Spawns dynamic object at game scene [br]
|
||||
## Dictionary keys: [br]
|
||||
|
|
@ -76,4 +78,23 @@ func shoot_internal(id:int , damage: int) -> void:
|
|||
var collision = space.intersect_ray(ray)
|
||||
if collision != {} and collision["collider"] is Player:
|
||||
collision["collider"].take_damage.rpc_id(int(collision["collider"].name),damage)
|
||||
|
||||
|
||||
func is_on_site() -> bool:
|
||||
for plant in plants:
|
||||
if plant.is_player_on_site(multiplayer.get_unique_id()):
|
||||
return true
|
||||
return false
|
||||
|
||||
func get_site() -> PlantSite:
|
||||
for plant in plants:
|
||||
if plant.is_player_on_site(multiplayer.get_unique_id()):
|
||||
return plant
|
||||
return null
|
||||
|
||||
func kill_site(site: StringName) -> void:
|
||||
if multiplayer.is_server() == false:
|
||||
return
|
||||
|
||||
for body in plant_deadzones[site].get_overlapping_bodies():
|
||||
if body is Player:
|
||||
body.die()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue