add color to tower archetype, remove kind

This commit is contained in:
2026-06-29 00:11:26 -07:00
parent f2a24a37b8
commit 6f30cd5ff2
+5 -6
View File
@@ -19,7 +19,6 @@ Tower_Kind :: enum {
}
Tower_Archetype :: struct {
kind: Tower_Kind,
range: f32,
damage: int,
fire_rate: f32,
@@ -31,11 +30,11 @@ Tower_Archetype :: struct {
damage_per_level: int,
range_per_level: f32,
splash_radius: f32,
color: rl.Color,
}
TOWER_ARCHETYPES: [Tower_Kind]Tower_Archetype = {
.Archer = {
kind = .Archer,
range = 100,
damage = 12,
fire_rate = 0.45,
@@ -47,9 +46,9 @@ TOWER_ARCHETYPES: [Tower_Kind]Tower_Archetype = {
damage_per_level = 3,
range_per_level = 8,
splash_radius = 0,
color = rl.YELLOW,
},
.Cannon = {
kind = .Cannon,
range = 110,
damage = 35,
fire_rate = 1.2,
@@ -61,9 +60,9 @@ TOWER_ARCHETYPES: [Tower_Kind]Tower_Archetype = {
damage_per_level = 3,
range_per_level = 8,
splash_radius = 60,
color = rl.DARKGRAY,
},
.Ice = {
kind = .Ice,
range = 85,
damage = 6,
fire_rate = 0.55,
@@ -75,6 +74,7 @@ TOWER_ARCHETYPES: [Tower_Kind]Tower_Archetype = {
damage_per_level = 3,
range_per_level = 8,
splash_radius = 0,
color = rl.DARKBLUE,
},
}
@@ -166,8 +166,7 @@ render_towers :: proc(world: ^World) {
archetype := TOWER_ARCHETYPES[t.kind]
pixel_width := f32(archetype.footprint_w * TILE_SIZE)
pixel_height := f32(archetype.footprint_h * TILE_SIZE)
color := rl.Color{255, 203, 0, 255}
if t.kind == .Cannon do color = rl.DARKGRAY
color := archetype.color
rl.DrawRectangle(
i32(t.position.x - pixel_width * 0.5),
i32(t.position.y - pixel_height * 0.5),