summaryrefslogtreecommitdiff
path: root/godot/scripts/machines/Cannon.gd
diff options
context:
space:
mode:
authorAnson Bridges <bridges.anson@gmail.com>2022-09-30 11:20:16 -0400
committerAnson Bridges <bridges.anson@gmail.com>2022-09-30 11:20:16 -0400
commit4a17fde692b900393d796675bcf7011aa7399dad (patch)
tree5305dba808a7094192821736a379168cdb549843 /godot/scripts/machines/Cannon.gd
parent7a1d857de96174dfa5a0fa40f8c14acbd2f651c2 (diff)
syncing off main
Diffstat (limited to 'godot/scripts/machines/Cannon.gd')
-rw-r--r--godot/scripts/machines/Cannon.gd9
1 files changed, 8 insertions, 1 deletions
diff --git a/godot/scripts/machines/Cannon.gd b/godot/scripts/machines/Cannon.gd
index 80b9edf..6c0b350 100644
--- a/godot/scripts/machines/Cannon.gd
+++ b/godot/scripts/machines/Cannon.gd
@@ -41,6 +41,7 @@ func _ready():
add_collision_exception_with(get_parent().get_parent())
mode = RigidBody.MODE_KINEMATIC
world_ballistics = world.get_node("BALLISTICS")
+ if loaded: controllable = true
func on_new_control():
if is_network_master(): world.cam.attach(self, "STATIC", "./YawJoint/PitchJoint/CameraPoint")
@@ -65,6 +66,7 @@ func attack1():
remotesync func fire():
loaded = false
+ controllable = false
status.set_visible(true)
$YawJoint/PitchJoint/Muzzle/explosion_sound.play()
var expl = preload("res://particles/p_Explosion.tscn").instance()
@@ -79,6 +81,11 @@ remotesync func fire():
cball.shooter = user.name + " (" + world.players_info[user.get_network_master()][0] + ")"
cball.shooter_id = user.get_network_master()
if mode == RigidBody.MODE_KINEMATIC:
- get_parent().apply_impulse($YawJoint/PitchJoint.global_transform.origin - get_parent().global_transform.origin, -1*cball.mass*ball_speed*muzzle.global_transform.basis.x)
+ get_parent().get_parent().apply_impulse($YawJoint/PitchJoint.global_transform.origin - get_parent().global_transform.origin, -1*cball.mass*ball_speed*muzzle.global_transform.basis.x)
else:
if is_network_master(): apply_impulse($YawJoint/PitchJoint.global_transform.origin - global_transform.origin, -1*cball.mass*ball_speed*muzzle.global_transform.basis.x)
+
+remotesync func load_cannonball():
+ loaded = true
+ controllable = true
+ $StatusNotifier.visible = false