19 lines
782 B
GDScript
19 lines
782 B
GDScript
extends Node2D
|
|
var data: Dictionary
|
|
const TEXTURE := preload("res://assets/planets/mountain.png")
|
|
|
|
func _ready() -> void:
|
|
texture_filter = CanvasItem.TEXTURE_FILTER_LINEAR_WITH_MIPMAPS
|
|
var blend := ShaderMaterial.new()
|
|
blend.shader = preload("res://resources/effects/mountain_blend.gdshader")
|
|
blend.set_shader_parameter("ground_tint",(data.landscape.high as Color).lerp(data.landscape.low,0.35))
|
|
blend.set_shader_parameter("rock_tint",data.landscape.rock)
|
|
material = blend
|
|
|
|
func _draw() -> void:
|
|
for mountain in data.mountains:
|
|
draw_set_transform(mountain.position,mountain.rotation)
|
|
var extent := Vector2(mountain.size,mountain.size*TEXTURE.get_height()/TEXTURE.get_width())
|
|
draw_texture_rect(TEXTURE,Rect2(-extent*0.5,extent),false)
|
|
draw_set_transform(Vector2.ZERO)
|