mirror of
https://github.com/jwinterm/MoonLaunch.git
synced 2026-10-26 05:58:36 +01:00
Update to working version
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
# adapted with thanks from code by GDQuest
|
||||
# http://gdquest.com/
|
||||
|
||||
extends Node2D
|
||||
|
||||
var colors = {
|
||||
'BLUE': Color(.216, .474, .702),
|
||||
'RED': Color(1.0, .329, .298),
|
||||
'YELLOW': Color(.867, .91, .247),
|
||||
'GREEN': Color(.054, .718, .247)
|
||||
}
|
||||
|
||||
var WIDTH = 5
|
||||
var parent = null
|
||||
|
||||
func _ready():
|
||||
parent = get_parent()
|
||||
set_process(true)
|
||||
set_process_input(true)
|
||||
set_hidden(true)
|
||||
|
||||
func _input(event):
|
||||
#if event.is_action_pressed("ui_focus_next"):
|
||||
# set_hidden(not is_hidden())
|
||||
pass
|
||||
|
||||
func _process(delta):
|
||||
set_global_rot(0)
|
||||
update()
|
||||
|
||||
func _draw():
|
||||
draw_arrow(parent.get_linear_velocity(), Vector2(), 1.0, 'YELLOW')
|
||||
draw_arrow(parent.get_applied_force(), Vector2(), 0.5, 'RED')
|
||||
|
||||
func draw_arrow(vector, pos, scale, color):
|
||||
color = colors[color]
|
||||
if vector.length() == 0:
|
||||
return
|
||||
draw_line(pos * scale, vector * scale, color, WIDTH)
|
||||
var dir = vector.normalized()
|
||||
draw_triangle(vector * scale, dir, 10, color)
|
||||
draw_circle(pos, 5, color)
|
||||
|
||||
func draw_triangle(pos, dir, size, color):
|
||||
var a = pos + dir * size
|
||||
var b = pos + dir.rotated(2*PI/3) * size
|
||||
var c = pos + dir.rotated(4*PI/3) * size
|
||||
var points = Vector2Array([a, b, c])
|
||||
draw_polygon(points, ColorArray([color]))
|
||||
|
||||
Reference in New Issue
Block a user