28 lines
1.1 KiB
GDScript
28 lines
1.1 KiB
GDScript
extends Node
|
|
|
|
func _ready() -> void:
|
|
var generator := preload("res://scripts/items/item_generator.gd")
|
|
var lab := preload("res://scripts/planets/laboratory.gd")
|
|
var definitions: Array = generator.DEFINITIONS.duplicate()
|
|
for id in lab.IDS:
|
|
var definition := lab.definition(id)
|
|
if definition not in definitions: definitions.append(definition)
|
|
var count := 0
|
|
for definition in definitions:
|
|
if definition.category != ItemDefinition.Category.WEAPON: continue
|
|
var image: Image = definition.icon.get_image()
|
|
assert(image != null and not image.is_empty())
|
|
var transparent := 0
|
|
var visible := 0
|
|
for y in range(0,image.get_height(),8):
|
|
for x in range(0,image.get_width(),8):
|
|
var color := image.get_pixel(x,y)
|
|
if color.a < 0.01: transparent += 1
|
|
if color.a > 0.5: visible += 1
|
|
assert(transparent > 100,"Weapon icon background must be transparent: "+definition.item_id)
|
|
assert(visible > 100,"Weapon artwork must remain visible: "+definition.item_id)
|
|
count += 1
|
|
assert(count == 11)
|
|
print("WEAPON_ICON_TRANSPARENCY_TEST: PASS (11 weapon icons with transparent backgrounds and visible artwork)")
|
|
get_tree().quit()
|