47 lines
920 B
GDScript
47 lines
920 B
GDScript
@abstract
|
|
extends State
|
|
|
|
class_name WeaponState
|
|
|
|
@warning_ignore("unused_signal")
|
|
signal return_to_previous
|
|
|
|
var machine: WeaponSubStateMachine
|
|
|
|
func _use_begin() -> void:
|
|
pass
|
|
|
|
@rpc("authority","call_remote","reliable")
|
|
func use_begin() -> void:
|
|
_use_begin()
|
|
if is_multiplayer_authority():
|
|
use_begin.rpc()
|
|
|
|
func _use_end():
|
|
pass
|
|
|
|
@rpc("authority","call_remote","reliable")
|
|
func use_end() -> void:
|
|
_use_end()
|
|
if is_multiplayer_authority():
|
|
use_end.rpc()
|
|
|
|
func _alternate_state() -> void:
|
|
pass
|
|
|
|
@rpc("authority","call_remote","reliable")
|
|
func alternate_state() -> void:
|
|
_alternate_state()
|
|
if is_multiplayer_authority():
|
|
alternate_state.rpc()
|
|
# Need to clarify naming; Switch mode like firemode. For different states use
|
|
# alternate_state
|
|
|
|
func _switch_mode():
|
|
pass
|
|
|
|
@rpc("authority","call_remote","reliable")
|
|
func switch_mode() -> void:
|
|
_switch_mode()
|
|
if is_multiplayer_authority():
|
|
switch_mode.rpc()
|