diff --git a/scripts/player.gd b/scripts/player.gd index ed3ac1b..c4e3ecd 100644 --- a/scripts/player.gd +++ b/scripts/player.gd @@ -21,7 +21,7 @@ var switch_charge = 0 var switch_charge_cap = 200 # While switching is always at 100, things like speed boost might go higher! var movement_charge = 0.15 # In percent per meter (except when heroes change that) -const fall_height = -25 +const fall_height = -50 var debug_node @@ -157,20 +157,21 @@ func control_player(state): func _process(delta): # All player code not caused by input, and not causing movement - var vel = get_linear_velocity() - switch_charge += movement_charge * vel.length() * delta - var switch_node = get_node("MasterOnly/SwitchCharge") - switch_node.set_text("%.f%%" % switch_charge) - if switch_charge >= 100: - # Let switch_charge keep building, because we use it for walk_speed and things - switch_node.set_text("100%% (%.f)\nQ - Switch hero" % switch_charge) - if switch_charge > switch_charge_cap: - # There is however a cap - switch_charge = switch_charge_cap - - if get_translation().y < fall_height: - spawn() - switch_hero_interface() + if is_network_master(): + var vel = get_linear_velocity() + switch_charge += movement_charge * vel.length() * delta + var switch_node = get_node("MasterOnly/SwitchCharge") + switch_node.set_text("%.f%%" % switch_charge) + if switch_charge >= 100: + # Let switch_charge keep building, because we use it for walk_speed and things + switch_node.set_text("100%% (%.f)\nQ - Switch hero" % switch_charge) + if switch_charge > switch_charge_cap: + # There is however a cap + switch_charge = switch_charge_cap + + if get_translation().y < fall_height: + spawn() + switch_hero_interface() func switch_hero_interface(): # Interface needs the mouse! @@ -189,7 +190,7 @@ func switch_hero_master(): sync func switch_hero(hero): var new_hero = load("res://scenes/heroes/%d.tscn" % hero).instance() - var net_id = get_tree().get_network_unique_id() + var net_id = int(get_name()) set_name("%d-delete" % net_id) # Can't have duplicate names new_hero.set_name("%d" % net_id) new_hero.set_network_master(net_id)