forked from unfa/liblast
Added Player-Weapon trigger API
parent
cfaa3e2ba1
commit
df17620149
|
@ -16,6 +16,8 @@ extends CharacterBody3D
|
||||||
@onready var body = $Body
|
@onready var body = $Body
|
||||||
@onready var mesh = $Mesh
|
@onready var mesh = $Mesh
|
||||||
|
|
||||||
|
@onready var weapon = $Head/Camera/Hand/Weapon
|
||||||
|
|
||||||
@onready var body_height = body.shape.height
|
@onready var body_height = body.shape.height
|
||||||
@onready var body_y = body.position.y
|
@onready var body_y = body.position.y
|
||||||
@onready var mesh_height = mesh.mesh.mid_height
|
@onready var mesh_height = mesh.mesh.mid_height
|
||||||
|
@ -115,6 +117,15 @@ func _input(event) -> void:
|
||||||
|
|
||||||
rpc_unreliable(&'aim', event)
|
rpc_unreliable(&'aim', event)
|
||||||
|
|
||||||
|
if Input.is_action_just_pressed("trigger_primary"):
|
||||||
|
weapon.trigger(0, true)
|
||||||
|
elif Input.is_action_just_released("trigger_primary"):
|
||||||
|
weapon.trigger(0, false)
|
||||||
|
if Input.is_action_just_pressed("trigger_secondary"):
|
||||||
|
weapon.trigger(1, true)
|
||||||
|
elif Input.is_action_just_released("trigger_secondary"):
|
||||||
|
weapon.trigger(1, false)
|
||||||
|
|
||||||
func _physics_process(delta):
|
func _physics_process(delta):
|
||||||
rpc_unreliable(&'set_global_transform', global_transform)
|
rpc_unreliable(&'set_global_transform', global_transform)
|
||||||
head.rpc_unreliable(&'set_rotation', head.get_rotation())
|
head.rpc_unreliable(&'set_rotation', head.get_rotation())
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
extends Node3D
|
||||||
|
|
||||||
|
# Declare member variables here. Examples:
|
||||||
|
# var a = 2
|
||||||
|
# var b = "text"
|
||||||
|
|
||||||
|
#enum Trigger {TRIGGER_PRIMARY, TRIGGER_SECONDARY}
|
||||||
|
|
||||||
|
func trigger(index: int, active: bool) -> void:
|
||||||
|
print("Weapon " + str(name) + ", Trigger " + str(index) + ", active: " + str(active))
|
||||||
|
|
||||||
|
if index == 0 and active:
|
||||||
|
$Flash/FlashParticles.emmiting = true
|
||||||
|
|
||||||
|
# Called when the node enters the scene tree for the first time.
|
||||||
|
func _ready():
|
||||||
|
pass # Replace with function body.
|
||||||
|
|
||||||
|
|
||||||
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||||
|
#func _process(delta):
|
||||||
|
# pass
|
Loading…
Reference in New Issue