gear: make basis properties overridable by child classes
This commit is contained in:
parent
1112a9f6da
commit
3e23bd4841
1 changed files with 16 additions and 14 deletions
|
|
@ -1,25 +1,27 @@
|
|||
@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 model_file():
|
||||
return "hammer.glb"
|
||||
func continuous():
|
||||
return false
|
||||
func idle_basis():
|
||||
return Basis(
|
||||
Vector3(1, 0, 0),
|
||||
Vector3(0, 1, 0),
|
||||
Vector3(0, 0, 1))
|
||||
func use_basis():
|
||||
return Basis(
|
||||
Vector3(1, 0, 0),
|
||||
Vector3(0, 0, -1),
|
||||
Vector3(0, 1, 0))
|
||||
func pickup_basis():
|
||||
return idle_basis()
|
||||
|
||||
func use(player):
|
||||
basis = use_basis
|
||||
basis = use_basis()
|
||||
$Timer.start()
|
||||
on_use(player)
|
||||
|
||||
|
|
@ -36,10 +38,10 @@ func on_ready():
|
|||
pass
|
||||
|
||||
func _on_timer_timeout():
|
||||
basis = idle_basis
|
||||
basis = idle_basis()
|
||||
|
||||
func _ready():
|
||||
basis = idle_basis
|
||||
basis = idle_basis()
|
||||
if get_parent() is GearPickup:
|
||||
basis = pickup_basis
|
||||
basis = pickup_basis()
|
||||
on_ready()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue