implement camera display marker to minimap
This commit is contained in:
parent
d0f0d8c009
commit
e2fb7638c8
6 changed files with 96 additions and 47 deletions
28
scenes/CameraMarker.gd
Normal file
28
scenes/CameraMarker.gd
Normal file
|
@ -0,0 +1,28 @@
|
|||
extends Sprite2D
|
||||
|
||||
var size_multiplier
|
||||
var w_s
|
||||
var previous_camera_zoom
|
||||
|
||||
# draws a box represnting the camera view in minimap
|
||||
func _draw():
|
||||
draw_rect(Rect2(-w_s.x/2, -w_s.y/2, w_s.x, w_s.y), Color.GREEN, false, -3.0)
|
||||
|
||||
|
||||
# rotates the box if camera is rotated
|
||||
func _on_camera_zoom_2d_camera_rotation_changed(new_rotation):
|
||||
self.rotation = new_rotation
|
||||
|
||||
|
||||
# redraws the box to a different size if amera is zoomed
|
||||
func _on_camera_zoom_2d_camera_zoom_changed(new_zoom_factor):
|
||||
w_s = (DisplayServer.window_get_size(0) / size_multiplier)
|
||||
w_s.x /= new_zoom_factor
|
||||
w_s.y /= new_zoom_factor
|
||||
queue_redraw()
|
||||
|
||||
|
||||
# Sets the initial size of the camera box, after game is loaded
|
||||
func _on_main_worldgen_ready() -> void:
|
||||
size_multiplier = Globals.map_size / 32
|
||||
w_s = (DisplayServer.window_get_size(0) / size_multiplier)
|
|
@ -6,7 +6,7 @@
|
|||
[ext_resource type="PackedScene" uid="uid://2we3txfr812u" path="res://scenes/Camera_zoom_2d.tscn" id="4_rx82t"]
|
||||
[ext_resource type="Script" path="res://scripts/EntityPlacer.gd" id="5_8jju5"]
|
||||
[ext_resource type="Script" path="res://scripts/Minimap.gd" id="5_rg28x"]
|
||||
[ext_resource type="Texture2D" uid="uid://cxn2fno1j7vf5" path="res://icon.svg" id="7_w68w7"]
|
||||
[ext_resource type="Script" path="res://scenes/CameraMarker.gd" id="7_0s6ed"]
|
||||
|
||||
[node name="Main" type="Node2D"]
|
||||
script = ExtResource("1_ysxum")
|
||||
|
@ -123,7 +123,8 @@ script = ExtResource("5_rg28x")
|
|||
[node name="CameraMarker" type="Sprite2D" parent="UILayer/Control/Minimap"]
|
||||
z_index = 1
|
||||
position = Vector2(-32, 0)
|
||||
texture = ExtResource("7_w68w7")
|
||||
centered = false
|
||||
script = ExtResource("7_0s6ed")
|
||||
|
||||
[node name="MinimapSprite" type="Sprite2D" parent="UILayer/Control/Minimap"]
|
||||
texture_repeat = 1
|
||||
|
@ -133,6 +134,9 @@ centered = false
|
|||
[connection signal="worldgen_ready" from="." to="ChunkHandler" method="_on_main_worldgen_ready"]
|
||||
[connection signal="worldgen_ready" from="." to="CameraZoom2D" method="_on_main_worldgen_ready"]
|
||||
[connection signal="worldgen_ready" from="." to="UILayer/Control/Minimap" method="_on_main_worldgen_ready"]
|
||||
[connection signal="worldgen_ready" from="." to="UILayer/Control/Minimap/CameraMarker" method="_on_main_worldgen_ready"]
|
||||
[connection signal="camera_rotation_changed" from="CameraZoom2D" to="UILayer/Control/Minimap/CameraMarker" method="_on_camera_zoom_2d_camera_rotation_changed"]
|
||||
[connection signal="camera_zoom_changed" from="CameraZoom2D" to="UILayer/Control/Minimap/CameraMarker" method="_on_camera_zoom_2d_camera_zoom_changed"]
|
||||
[connection signal="pressed" from="UILayer/Control/ConstructionPanel/button_residental" to="UILayer/Control" method="_on_button_residental_pressed"]
|
||||
[connection signal="pressed" from="UILayer/Control/ConstructionPanel/button_commercial" to="UILayer/Control" method="_on_button_commercial_pressed"]
|
||||
[connection signal="pressed" from="UILayer/Control/ConstructionPanel/button_industrial" to="UILayer/Control" method="_on_button_industrial_pressed"]
|
||||
|
|
26
scenes/ParcelNoiseTesting.tscn
Normal file
26
scenes/ParcelNoiseTesting.tscn
Normal file
|
@ -0,0 +1,26 @@
|
|||
[gd_scene load_steps=4 format=3 uid="uid://b3onvgtcvpk3q"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_fu8gh"]
|
||||
interpolation_mode = 2
|
||||
|
||||
[sub_resource type="FastNoiseLite" id="FastNoiseLite_54wht"]
|
||||
noise_type = 5
|
||||
frequency = 0.034
|
||||
fractal_type = 0
|
||||
fractal_octaves = 1
|
||||
fractal_lacunarity = 204.627
|
||||
fractal_gain = 2.103
|
||||
fractal_weighted_strength = 0.32
|
||||
cellular_distance_function = 1
|
||||
cellular_jitter = 0.884
|
||||
|
||||
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_kpv1q"]
|
||||
generate_mipmaps = false
|
||||
color_ramp = SubResource("Gradient_fu8gh")
|
||||
noise = SubResource("FastNoiseLite_54wht")
|
||||
|
||||
[node name="ParcelNoiseTesting" type="Sprite2D"]
|
||||
position = Vector2(1480, 700)
|
||||
rotation = 0.523598
|
||||
scale = Vector2(2.6875, 2.60938)
|
||||
texture = SubResource("NoiseTexture2D_kpv1q")
|
Loading…
Add table
Add a link
Reference in a new issue