diff options
Diffstat (limited to 'godot/scenes/environment')
| -rw-r--r-- | godot/scenes/environment/BallBarrel.gd | 10 | ||||
| -rw-r--r-- | godot/scenes/environment/BallBarrel.tscn | 31 |
2 files changed, 41 insertions, 0 deletions
diff --git a/godot/scenes/environment/BallBarrel.gd b/godot/scenes/environment/BallBarrel.gd new file mode 100644 index 0000000..80b721e --- /dev/null +++ b/godot/scenes/environment/BallBarrel.gd @@ -0,0 +1,10 @@ +extends RigidBody + +const balls_max = 100 +onready var balls_left = balls_max + +func use_generic(player: NetChar) -> void: + if balls_left > 0 and player.inventory["cannonball"] < player.inventory_caps["cannonball"]: + player.inventory["cannonball"] += 1 + balls_left -= 1 + player.rset("inventory", player.inventory) diff --git a/godot/scenes/environment/BallBarrel.tscn b/godot/scenes/environment/BallBarrel.tscn new file mode 100644 index 0000000..4378d7e --- /dev/null +++ b/godot/scenes/environment/BallBarrel.tscn @@ -0,0 +1,31 @@ +[gd_scene load_steps=6 format=2] + +[ext_resource path="res://meshes/barrel.tres" type="ArrayMesh" id=1] +[ext_resource path="res://scenes/environment/BallBarrel.gd" type="Script" id=2] + +[sub_resource type="PhysicsMaterial" id=3] +resource_local_to_scene = true + +[sub_resource type="CylinderShape" id=1] +height = 1.18356 +radius = 0.597426 + +[sub_resource type="BoxShape" id=2] +extents = Vector3( 0.62804, 0.686083, 0.635326 ) + +[node name="BallBarrel" type="RigidBody"] +mass = 400.0 +physics_material_override = SubResource( 3 ) +script = ExtResource( 2 ) + +[node name="CollisionShape" type="CollisionShape" parent="."] +shape = SubResource( 1 ) + +[node name="MeshInstance" type="MeshInstance" parent="."] +mesh = ExtResource( 1 ) + +[node name="UseArea" type="Area" parent="."] +monitoring = false + +[node name="CollisionShape" type="CollisionShape" parent="UseArea"] +shape = SubResource( 2 ) |
