1
0
mirror of https://github.com/JohnBreaux/Boat-Battle.git synced 2024-11-15 05:25:57 +00:00

Bug Fix: ships were able to be placed hanging off of the board

- Fixed the issue
- Now ships can only be placed inside/on the board
This commit is contained in:
tommy-l-ngo 2021-11-01 00:11:54 -05:00
parent 16719e3adc
commit cb661106c3

View File

@ -6,6 +6,7 @@ extends RigidBody2D
var held = false var held = false
var originalPos var originalPos
var snapOriginalPos = false var snapOriginalPos = false
var vertical = true
# Called when the node enters the scene tree for the first time. # Called when the node enters the scene tree for the first time.
func _ready(): func _ready():
@ -27,6 +28,69 @@ func _input(event):
else: else:
if originalPos != null: if originalPos != null:
position = originalPos position = originalPos
rotation = 0
vertical = true
# 2-Ship
if (get_parent().get_node("2Ship").rotation_degrees == 0):
if (get_parent().get_node("2Ship").position.y > 308):
position = originalPos
rotation = 0
vertical = true
if (get_parent().get_node("2Ship").rotation_degrees == -90):
if (get_parent().get_node("2Ship").position.x > 308):
position = originalPos
rotation = 0
vertical = true
# 3-Ship A
if (get_parent().get_node("3ShipA").rotation_degrees == 0):
if (get_parent().get_node("3ShipA").position.y > 308) or (get_parent().get_node("3ShipA").position.y < 52):
position = originalPos
rotation = 0
vertical = true
if (get_parent().get_node("3ShipA").rotation_degrees == -90):
if (get_parent().get_node("3ShipA").position.x > 308) or (get_parent().get_node("3ShipA").position.x < 52):
position = originalPos
rotation = 0
vertical = true
# 3-Ship B
if (get_parent().get_node("3ShipB").rotation_degrees == 0):
if (get_parent().get_node("3ShipB").position.y > 308) or (get_parent().get_node("3ShipB").position.y < 52):
position = originalPos
rotation = 0
vertical = true
if (get_parent().get_node("3ShipB").rotation_degrees == -90):
if (get_parent().get_node("3ShipB").position.x > 308) or (get_parent().get_node("3ShipB").position.x < 52):
position = originalPos
rotation = 0
vertical = true
# 4-Ship
if (get_parent().get_node("4Ship").rotation_degrees == 0):
if (get_parent().get_node("4Ship").position.y > 276.8) or (get_parent().get_node("4Ship").position.y < 52):
position = originalPos
rotation = 0
vertical = true
if (get_parent().get_node("4Ship").rotation_degrees == -90):
if (get_parent().get_node("4Ship").position.x > 276.8) or (get_parent().get_node("4Ship").position.x < 52):
position = originalPos
rotation = 0
vertical = true
# 5-Ship
if (get_parent().get_node("5Ship").rotation_degrees == 0):
if (get_parent().get_node("5Ship").position.y > 276.8) or (get_parent().get_node("5Ship").position.y < 84.8):
position = originalPos
rotation = 0
vertical = true
if (get_parent().get_node("5Ship").rotation_degrees == -90):
if (get_parent().get_node("5Ship").position.x > 276.8) or (get_parent().get_node("5Ship").position.x < 84.8):
position = originalPos
rotation = 0
vertical = true
if event is InputEventMouseMotion and held: if event is InputEventMouseMotion and held:
if snapOriginalPos == false: if snapOriginalPos == false:
@ -36,7 +100,12 @@ func _input(event):
if event.is_action_pressed("ui_rotate"): if event.is_action_pressed("ui_rotate"):
if(event.position - position).length() < click_radius: if(event.position - position).length() < click_radius:
rotate(PI/2); if vertical == true:
rotate(-PI/2)
vertical = false
else:
rotate(PI/2)
vertical = true
# Called every frame. 'delta' is the elapsed time since the previous frame. # Called every frame. 'delta' is the elapsed time since the previous frame.
#func _process(delta): #func _process(delta):
# pass # pass