1
0
Fork 0
spacetac/main.tscn
2022-10-19 23:23:47 +02:00

83 lines
2.5 KiB
Plaintext

[gd_scene load_steps=6 format=3 uid="uid://c6omib6txy3qh"]
[ext_resource type="PackedScene" uid="uid://brbtq46uk18gg" path="res://core/battlefield.tscn" id="1_x63ik"]
[ext_resource type="PackedScene" uid="uid://dqaabctftkakr" path="res://core/player.tscn" id="2_o4smw"]
[ext_resource type="PackedScene" uid="uid://b8uik6q4v35o3" path="res://tac/units/factory.tscn" id="2_wnc50"]
[sub_resource type="GDScript" id="GDScript_8ehhf"]
script/source = "extends Camera2D
var raw_zoom := 0
func scroll(diff: Vector2):
position -= diff
func change_zoom(diff: float):
raw_zoom = clampf(raw_zoom + diff, -2, 2)
var z := pow(2.0, raw_zoom)
zoom = Vector2(z, z)
"
[sub_resource type="GDScript" id="GDScript_0auct"]
script/source = "extends Control
signal scrolled(diff)
signal zoomed(diff)
func _gui_input(event):
if event is InputEventMouseMotion:
if event.button_mask & MOUSE_BUTTON_LEFT:
scrolled.emit(event.relative)
if event is InputEventMouseButton and event.pressed:
if event.button_index == MOUSE_BUTTON_WHEEL_UP:
zoomed.emit(signf(event.factor))
elif event.button_index == MOUSE_BUTTON_WHEEL_DOWN:
zoomed.emit(-signf(event.factor))
"
[node name="main" type="Node2D"]
[node name="camera" type="Camera2D" parent="."]
position = Vector2(640, 360)
current = true
smoothing_enabled = true
script = SubResource("GDScript_8ehhf")
[node name="battlefield" parent="." instance=ExtResource("1_x63ik")]
[node name="player1" parent="battlefield" instance=ExtResource("2_o4smw")]
color = Color(0, 0, 1, 1)
code = "p1"
[node name="player2" parent="battlefield" instance=ExtResource("2_o4smw")]
color = Color(1, 0, 0, 1)
code = "p2"
[node name="factory1" parent="battlefield" node_paths=PackedStringArray("player") instance=ExtResource("2_wnc50")]
position = Vector2(270, 222)
player = NodePath("../player1")
rotation_offset = null
[node name="factory2" parent="battlefield" node_paths=PackedStringArray("player") instance=ExtResource("2_wnc50")]
position = Vector2(929, 429)
player = NodePath("../player2")
rotation_offset = null
[node name="ui" type="CanvasLayer" parent="."]
[node name="camcontrol" type="Control" parent="ui"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 3
size_flags_vertical = 3
mouse_force_pass_scroll_events = false
script = SubResource("GDScript_0auct")
[connection signal="scrolled" from="ui/camcontrol" to="camera" method="scroll"]
[connection signal="zoomed" from="ui/camcontrol" to="camera" method="change_zoom"]