hexland/Scripts/Hex.gd

40 lines
909 B
GDScript3
Raw Normal View History

2022-08-23 10:37:13 -05:00
extends Node2D
class_name Hex
const WIDTH = 220
const HEIGHT = 190
const HALFWIDTH = WIDTH / 2
const HALFHEIGHT = HEIGHT / 2
const TEXTURE_MAP = {
"hills": preload("res://Assets/brick-hex.png"),
"forest": preload("res://Assets/wood-hex.png"),
"mountains": preload("res://Assets/stone-hex.png"),
"fields": preload("res://Assets/wheat-hex.png"),
"pasture": preload("res://Assets/sheep-hex.png"),
"desert": preload("res://Assets/desert-hex.png"),
}
var type = "desert" setget set_type
2022-08-23 14:12:59 -05:00
var index = Vector2.ZERO
2022-08-23 10:37:13 -05:00
func _ready():
var sprite = Sprite.new()
sprite.texture = TEXTURE_MAP[type]
sprite.name = "Img"
add_child(sprite)
2022-08-23 14:12:59 -05:00
var label = Label.new()
label.name = "Lbl"
label.add_font_override("font", Debug.font)
add_child(label)
func _process(_delta):
if Debug.on:
$Lbl.text = "(%+d, %+d)" % [index.x, index.y]
2022-08-23 10:37:13 -05:00
func set_type(newtype):
$Img.texture = TEXTURE_MAP[newtype]
type = newtype