2020-08-26 14:49:46 +00:00
|
|
|
extends ImageEffect
|
2020-01-27 15:23:52 +00:00
|
|
|
|
|
|
|
|
2020-08-27 22:20:07 +00:00
|
|
|
onready var type_option_button : OptionButton = $VBoxContainer/HBoxContainer2/TypeOptionButton
|
|
|
|
onready var angle_hslider : HSlider = $VBoxContainer/AngleOptions/AngleHSlider
|
|
|
|
onready var angle_spinbox : SpinBox = $VBoxContainer/AngleOptions/AngleSpinBox
|
|
|
|
|
|
|
|
|
2020-02-09 16:06:03 +00:00
|
|
|
func _ready() -> void:
|
2020-08-27 22:20:07 +00:00
|
|
|
type_option_button.add_item("Rotxel")
|
|
|
|
type_option_button.add_item("Upscale, Rotate and Downscale")
|
|
|
|
type_option_button.add_item("Nearest neighbour")
|
2020-01-27 15:23:52 +00:00
|
|
|
|
|
|
|
|
2020-08-26 14:49:46 +00:00
|
|
|
func set_nodes() -> void:
|
|
|
|
preview = $VBoxContainer/Preview
|
2020-01-27 15:23:52 +00:00
|
|
|
|
|
|
|
|
2020-08-26 14:49:46 +00:00
|
|
|
func _about_to_show() -> void:
|
|
|
|
._about_to_show()
|
2020-08-27 22:20:07 +00:00
|
|
|
angle_hslider.value = 0
|
2020-01-27 15:23:52 +00:00
|
|
|
|
2020-08-26 14:49:46 +00:00
|
|
|
|
2020-08-27 22:20:07 +00:00
|
|
|
func commit_action(_cel : Image, _pixels : Array, _project : Project = Global.current_project) -> void:
|
|
|
|
match type_option_button.text:
|
2020-02-04 15:59:06 +00:00
|
|
|
"Rotxel":
|
2020-08-27 22:20:07 +00:00
|
|
|
DrawingAlgos.rotxel(_cel,angle_hslider.value*PI/180)
|
2020-02-04 15:59:06 +00:00
|
|
|
"Nearest neighbour":
|
2020-08-27 22:20:07 +00:00
|
|
|
DrawingAlgos.nn_rotate(_cel,angle_hslider.value*PI/180)
|
2020-04-03 11:20:59 +00:00
|
|
|
"Upscale, Rotate and Downscale":
|
2020-08-27 22:20:07 +00:00
|
|
|
DrawingAlgos.fake_rotsprite(_cel,angle_hslider.value*PI/180)
|
|
|
|
|
|
|
|
|
|
|
|
func _confirmed() -> void:
|
|
|
|
._confirmed()
|
|
|
|
angle_hslider.value = 0
|
2020-02-04 16:29:34 +00:00
|
|
|
|
2020-02-03 16:55:55 +00:00
|
|
|
|
2020-08-26 14:49:46 +00:00
|
|
|
func _on_HSlider_value_changed(_value : float) -> void:
|
|
|
|
update_preview()
|
2020-08-27 22:20:07 +00:00
|
|
|
angle_spinbox.value = angle_hslider.value
|
2020-02-03 16:55:55 +00:00
|
|
|
|
2020-02-03 17:01:59 +00:00
|
|
|
|
2020-08-26 14:49:46 +00:00
|
|
|
func _on_SpinBox_value_changed(_value : float) -> void:
|
2020-08-27 22:20:07 +00:00
|
|
|
angle_hslider.value = angle_spinbox.value
|
2020-07-29 17:06:20 +00:00
|
|
|
|
|
|
|
|
2020-08-27 22:20:07 +00:00
|
|
|
func _on_TypeOptionButton_item_selected(_id : int) -> void:
|
2020-08-26 14:49:46 +00:00
|
|
|
update_preview()
|