all repos — uStrat @ e626a1251b56cb0abbb3043031ba813cd10c475a

simple turn-based strategy game inspired by uCity, Super Robot Wars, C&C, Fire Emblem

putting some boilerplate in place for AI unit movement
Iris Lightshard nilix@nilfm.cc
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQJDBAABCAAtFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAl06iHUPHG5pbGl4QG5p
bGZtLmNjAAoJEDt/vCIUTmOYX2YP/3I9iMzkFC/snmcpy9zPPkEFpKoWoh3xnCmO
3/E8r+BBmkAtCjWkoOjkLkonlpjr0SOIp6Jxg9NUVeVCqzH6aN8NWnAnfNHKaHZg
dv7rN5lZ+KbAJuxBgXWlp1Y/5dwiSx5PnhYNfElFXm7CIeaByJIpbk6zwLCGc+/S
0U9IjQ3NIQy79b9PQef+Td15+J4kBbGXv+5w8CF8WuHCrMF83wbDEi3oF807iDiA
0vKSlYz4fCYEX+ijXgxN393CsuCe5pMDOekTFpYebEnNf0tNv3Q3S/SqkCicsnr7
gzQf/olFkg9MQwGBy4TxYas4TINfspW/ffF8LtWp9l/ew5oZcBCjRArzkcd5O6Uf
9DPlbuBK2lfNKObkkgzrTSH8W9YP8rR6PsxrF/Px+wUtyKTvv5a73xwOhMUEEbeW
V8HTkMIK5x2Ne3By3yCUDigDbPLMuaUHHf4tcyi1ITY2j3MBiCUYHpbi8qFaNCZS
GEc2h8FWVKwsBMkZfDzUHknp0vzBZ0e4YpJtuhH7amARQdFt73Ktn3W4ApS2GxQX
dqKa4EtHBngmEhlABQk0fOfx7K0KJ6kRJuHJd8mvHoEHdxmFlqrT8qdnMUU7kyw4
81KOkP+ZX1t6rwRdwv8u31V01F5S3IjrX/0dpOmqc0c46Fne3cXCnZikZDgR78NI
KzMNVEbK
=yHk1
-----END PGP SIGNATURE-----
commit

e626a1251b56cb0abbb3043031ba813cd10c475a

parent

671a5788e5f99ec237cec3d5b48963a8f48a9f49

2 files changed, 38 insertions(+), 29 deletions(-)

jump to
M AI.jsAI.js

@@ -10,6 +10,43 @@ {

return Math.floor(Math.random()*i); } +AI.assignTarget = function(self, target) +{ + self.target = target; +} + +AI.getBearingOfTarget = function(self) +{ + var target = self.target; + var w, z, d; + var bearing = ""; + w = self.x - target.x; + z = self.y - target.y; + d = dist(self, target); + if (z/d > 0) + { + bearing += "n"; + } + else if (z/d < 0) + { + bearing += "s"; + } + if (w/d > 0) + { + bearing += "e"; + } + else if (w/d < 0) + { + bearing += "w"; + } + return bearing; +} + +AI.chainPath = function(self) +{ + switch +} + AI.countStructs = function(str) { var i, l, n;

@@ -23,35 +60,6 @@ n++;

} } return n; -} - -AI.getMorale = function() -{ - var x, y, z; - x = teams.cpu.energy - teams.p1.energy; - y = teams.cpu.units.length - teams.p1.units.length; - z = teams.cpu.structs.length - teams.p1.structs.length; - w = new Object(); - w.energy = x; - w.units = y; - w.structs = z; - AI.morale = w; -} - -AI.generatePath = function(src, dest) -{ - -} - -priority = function(u, obj) -{ - this.src = u; - this.target = obj; -} - -AI.updateUnitPriority = function(unit) -{ - } AI.findNewStructClose = function()
M Unit.jsUnit.js

@@ -13,6 +13,7 @@ this.cost = 30;

this.hasMoved = false; this.hasAttacked = false; this.name = ""; + this.target = {}; //only used for CPU units } function mkAce(player, x, y)