mirror of
https://github.com/cyberarm/i-mic-rts.git
synced 2025-12-16 00:02:33 +00:00
Extracted movement and turret into 'components' that entity get add to its self when defined
This commit is contained in:
@@ -1,4 +1,6 @@
|
||||
IMICRTS::Entity.define_entity(:construction_worker, :unit, 1000, "Constructs buildings") do |entity|
|
||||
entity.has(:movement)
|
||||
|
||||
entity.radius = 14
|
||||
entity.movement = :ground
|
||||
entity.max_health = 100.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
IMICRTS::Entity.define_entity(:harvester, :unit, 1400, "Harvests ore") do |entity, director|
|
||||
entity.has(:movement)
|
||||
|
||||
entity.radius = 10
|
||||
entity.movement = :ground
|
||||
entity.max_health = 100.0
|
||||
@@ -28,7 +30,7 @@ IMICRTS::Entity.define_entity(:harvester, :unit, 1400, "Harvests ore") do |entit
|
||||
entity.define_singleton_method(:seek_refinery) do
|
||||
end
|
||||
|
||||
entity.define_singleton_method(:rotate_towards) do |target|
|
||||
entity.component(:movement).define_singleton_method(:rotate_towards) do |target|
|
||||
entity.angle = Gosu.angle(target.x, target.y, entity.position.x, entity.position.y)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,11 +1,15 @@
|
||||
IMICRTS::Entity.define_entity(:tank, :unit, 800, "Attacks ground targets") do |entity|
|
||||
entity.has(:movement)
|
||||
entity.has(:turret)
|
||||
|
||||
entity.radius = 14
|
||||
entity.movement = :ground
|
||||
entity.max_health = 100.0
|
||||
|
||||
entity.shell_image = "vehicles/tank/tank_shell.png"
|
||||
|
||||
entity.turret_shell_image = "vehicles/tank/tank_turret_shell.png"
|
||||
entity.component(:turret).shell_image = "vehicles/tank/tank_turret_shell.png"
|
||||
entity.component(:turret).center.y = 0.4
|
||||
|
||||
entity.on_tick do
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user