initial commit

This commit is contained in:
Jeremy Baxter 2026-01-21 20:50:41 +13:00
commit 79951d8075
22 changed files with 729 additions and 0 deletions

43
gears/gear.gd Normal file
View file

@ -0,0 +1,43 @@
@icon("./gear.png")
class_name Gear extends Node3D
var idle_basis = Basis(
Vector3(1, 0, 0),
Vector3(0, 1, 0),
Vector3(0, 0, 1))
var use_basis = Basis(
Vector3(1, 0, 0),
Vector3(0, 0, -1),
Vector3(0, 1, 0))
var pickup_basis = idle_basis
func gear_name():
return "Gear"
func gear_id():
return 0
func model_file():
return "hammer.glb"
func continuous():
return false
# this can be redefined to make a custom
# gear mesh, e.g. a SphereMesh
func use(player):
basis = use_basis
$Timer.start()
on_use(player)
func on_use(_player):
pass
func on_ready():
pass
func _on_timer_timeout():
basis = idle_basis
func _ready():
basis = idle_basis
if get_parent() is GearPickup:
basis = pickup_basis
on_ready()