summaryrefslogtreecommitdiff
path: root/godot/scripts/characters/NetworkedCharacter.gd
diff options
context:
space:
mode:
authorAnson Bridges <bridges.anson@gmail.com>2022-10-19 14:13:47 -0400
committerAnson Bridges <bridges.anson@gmail.com>2022-10-19 14:13:47 -0400
commit5100ec45264ff36a2558757e76198b8b25866992 (patch)
treecd1fd239fe0380028c1d77e456a49ecf186830d6 /godot/scripts/characters/NetworkedCharacter.gd
parente826b74a104e72ec398aa55bd5dceb13b5a0dae1 (diff)
server work
Diffstat (limited to 'godot/scripts/characters/NetworkedCharacter.gd')
-rw-r--r--godot/scripts/characters/NetworkedCharacter.gd15
1 files changed, 10 insertions, 5 deletions
diff --git a/godot/scripts/characters/NetworkedCharacter.gd b/godot/scripts/characters/NetworkedCharacter.gd
index c14d46f..8a0282d 100644
--- a/godot/scripts/characters/NetworkedCharacter.gd
+++ b/godot/scripts/characters/NetworkedCharacter.gd
@@ -71,17 +71,22 @@ func lose_machine():
controlling_machine = false
machine = null
-remotesync func damage(dmg_amt: int, _type: String, shooter: Array, extra: String):
+#args format
+#attacker_net_id
+#attacker_name
+#damage_type
+#weapon_name
+remotesync func damage(dmg_amt: int, args: Dictionary):
print(dmg_amt)
health -= dmg_amt
if health <= 0 and is_network_master():
- if shooter[0] != get_network_master() and shooter[0] != 1: world.rpc_id(shooter[0], "game_killsound")
+ if args["attacker_net_id"] != get_network_master() and args["attacker_net_id"] != 1: world.rpc_id(args["attacker_net_id"], "game_killsound")
if get_network_master() == 1:
- world._call_on_server("_character_death", {"killer_id" : shooter[0], "killer" : shooter[1], "victim_mp_id" : get_network_master(), "victim" : name, "extra" : extra})
+ world._call_on_server("_character_death", {"killer_id" : args["attacker_net_id"], "killer_name" : args["attacker_name"], "victim_mp_id" : get_network_master(), "victim_name" : name, "extra" : args["weapon_name"]})
else:
- world.rpc_id(1, "_call_on_server", "_character_death", {"killer_id" : shooter[0], "killer" : shooter[1], "victim_mp_id" : get_network_master(), "victim" : name, "extra" : extra})
+ world.rpc_id(1, "_call_on_server", "_character_death", {"killer_id" : args["attacker_net_id"], "killer_name" : args["attacker_name"], "victim_mp_id" : get_network_master(), "victim_name" : name, "extra" : args["weapon_name"]})
elif is_network_master():
- if shooter[0] != get_network_master() and shooter[0] != 1: world.rpc_id(shooter[0], "game_hitsound")
+ if args["attacker_net_id"] != get_network_master() and args["attacker_net_id"] != 1: world.rpc_id(args["attacker_net_id"], "game_hitsound")
remotesync func remove_dead_character():
if is_network_master() and machine != null: