#22 développement du pourcentage de contamination
This commit is contained in:
@@ -2,12 +2,12 @@ extends Resource
|
||||
class_name TerrainData
|
||||
|
||||
const TERRAIN_IMAGE_GAME_FACTOR = 50
|
||||
const DEFAULT_CONTAMINATION_CENTRAL_ZONE_MAX_SIZE = 1000
|
||||
const DEFAULT_CONTAMINATION_CENTRAL_ZONE_MIN_SIZE = 200
|
||||
const DEFAULT_CONTAMINATION_CENTRAL_ZONE_MAX_SIZE = 500
|
||||
const DEFAULT_CONTAMINATION_CENTRAL_ZONE_MIN_SIZE = 100
|
||||
|
||||
signal terrain_updated
|
||||
|
||||
@export var terrainSize : Vector2 = Vector2(2000,2000)
|
||||
@export var terrainSize : Vector2 = Vector2(1500,1500)
|
||||
|
||||
@export var contamination : Image = null
|
||||
|
||||
@@ -67,4 +67,7 @@ func get_contamination(point : Vector2) -> float:
|
||||
return contamination.get_pixel(
|
||||
int(round(pixel_point.x)),
|
||||
int(round(pixel_point.y))
|
||||
).r
|
||||
).r
|
||||
|
||||
func get_decontamination_coverage() -> float:
|
||||
return ImageTools.get_color_coverage(contamination)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[gd_resource type="Resource" script_class="SeedItem" load_steps=3 format=3 uid="uid://lrl2okkhyxmx"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://gui/player_info/assets/icons/bolt.svg" id="1_dy25s"]
|
||||
[ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://gui/assets/icons/bolt.svg" id="1_dy25s"]
|
||||
[ext_resource type="Script" uid="uid://bypjcvlc15gsm" path="res://common/inventory/scripts/items/seed_item.gd" id="2_mgcdi"]
|
||||
|
||||
[resource]
|
||||
|
||||
@@ -1,5 +1,14 @@
|
||||
class_name ImageTools
|
||||
|
||||
static func get_color_coverage(image: Image, color: Color = Color.WHITE):
|
||||
var pixel_color_count = 0.
|
||||
for x in range(image.get_width()):
|
||||
for y in range(image.get_height()):
|
||||
if image.get_pixel(x, y) == color:
|
||||
pixel_color_count += 1.
|
||||
return pixel_color_count/(image.get_width()*image.get_height())
|
||||
|
||||
|
||||
static func draw_circle(image: Image, center: Vector2i, length: int, color: Color = Color.WHITE):
|
||||
for x in range(image.get_width()):
|
||||
for y in range(image.get_height()):
|
||||
|
||||
Reference in New Issue
Block a user