Always shift entities, even if inactive.

This commit is contained in:
Steve 2015-10-29 11:35:59 +00:00
parent 44818d295a
commit 6409e4ec11
3 changed files with 34 additions and 9 deletions

View File

@ -7,10 +7,33 @@
"requires" : "PREVIOUS",
"objectives" : [
{
"description" : "Check all Wayponts",
"description" : "Check all Waypoints",
"targetName" : "Waypoint",
"targetValue" : 5,
"targetType" : "TT_WAYPOINT"
},
{
"description" : "Destroy Pandoran fighters",
"targetName" : "Pandoran",
"targetValue" : 3,
"targetType" : "TT_DESTROY",
"active" : 0
}
],
"triggers" : [
{
"type" : "TRIGGER_WAYPOINT",
"targetName" : "Waypoint #5",
"targetValue" : "1",
"action" : "TA_ACTIVE_ENTITY",
"actionValue" : "Pandoran"
},
{
"type" : "TRIGGER_WAYPOINT",
"targetName" : "Waypoint #5",
"targetValue" : "1",
"action" : "TA_ACTIVE_OBJECTIVE",
"actionValue" : "1"
}
],
"player" : {
@ -36,7 +59,8 @@
"side" : "SIDE_PANDORAN",
"x" : 640,
"y" : 1000,
"scatter" : 64
"scatter" : 64,
"active" : 0
}
],
"entityGroups" : [

View File

@ -46,6 +46,13 @@ void doEntities(void)
for (e = battle.entityHead.next ; e != NULL ; e = e->next)
{
/* must always be shifted, even if not active */
if (e != player)
{
e->x -= battle.ssx;
e->y -= battle.ssy;
}
if (e->active)
{
self = e;
@ -59,12 +66,6 @@ void doEntities(void)
e->x += e->dx;
e->y += e->dy;
if (e != player)
{
e->x -= battle.ssx;
e->y -= battle.ssy;
}
if (e->action != NULL)
{
if (--e->thinkTime <= 0)

View File

@ -56,7 +56,7 @@ static void think(void)
self->angle -= 360;
}
if (player != NULL && getDistance(player->x, player->y, self->x, self->y) <= 32 && teamMatesClose())
if (player != NULL && getDistance(player->x, player->y, self->x, self->y) <= 64 && teamMatesClose())
{
self->health = 0;