diff options
Diffstat (limited to 'godot/scripts/ballistics/Cannonball.gd')
| -rw-r--r-- | godot/scripts/ballistics/Cannonball.gd | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/godot/scripts/ballistics/Cannonball.gd b/godot/scripts/ballistics/Cannonball.gd index b41f104..5e6b84d 100644 --- a/godot/scripts/ballistics/Cannonball.gd +++ b/godot/scripts/ballistics/Cannonball.gd @@ -3,9 +3,12 @@ extends "res://scripts/ballistics/NetworkedProjectile.gd" export var drag_constant: float = 0.3 var damage_exceptions = [] var oldvel: Vector3 +var oldoldvel: Vector3 +const inventory_name: String = "cannonball" func _physics_process(_delta): if is_network_master(): + oldoldvel = oldvel oldvel = linear_velocity add_force(-1*linear_velocity*drag_constant, Vector3.ZERO) if global_transform.origin.y < -20: @@ -15,10 +18,6 @@ func get_init_info(): return {"linear_velocity" : linear_velocity, "angular_velocity" : angular_velocity, "oldvel" : oldvel, "shooter" : shooter, "shooter_id" : shooter_id} func _on_collision(body): - if is_network_master() and body.has_method("load_cannonball") and !body.loaded: - body.rpc("load_cannonball") - rpc("net_remove") - return - if is_network_master() and oldvel.length() > 20 and !damage_exceptions.has(body) and body.has_method("damage"): - body.rpc("damage", oldvel.length(), "BLUNT", [shooter_id, shooter], "using 'cannon'") + if is_network_master() and oldoldvel.length() > 20 and !damage_exceptions.has(body) and body.has_method("damage"): + body.rpc("damage", oldoldvel.length(), "BLUNT", [shooter_id, shooter], "using 'cannon'") damage_exceptions.append(body) |
