Page MenuHomeWildfire Games

D2548.id10924.diff
No OneTemporary

Size
2 KB
Referenced Files
None
Subscribers
None

D2548.id10924.diff

Index: binaries/data/mods/public/simulation/components/Formation.js
===================================================================
--- binaries/data/mods/public/simulation/components/Formation.js
+++ binaries/data/mods/public/simulation/components/Formation.js
@@ -245,15 +245,14 @@
*/
Formation.prototype.SetInPosition = function(ent)
{
- if (this.inPosition.indexOf(ent) != -1)
- return;
-
// Rotate the entity to the right angle
- var cmpPosition = Engine.QueryInterface(this.entity, IID_Position);
- var cmpEntPosition = Engine.QueryInterface(ent, IID_Position);
+ let cmpPosition = Engine.QueryInterface(this.entity, IID_Position);
+ let cmpEntPosition = Engine.QueryInterface(ent, IID_Position);
if (cmpEntPosition && cmpEntPosition.IsInWorld() && cmpPosition && cmpPosition.IsInWorld())
cmpEntPosition.TurnTo(cmpPosition.GetRotation().y);
-
+
+ if (this.inPosition.indexOf(ent) != -1)
+ return;
this.inPosition.push(ent);
};
Index: binaries/data/mods/public/simulation/components/UnitAI.js
===================================================================
--- binaries/data/mods/public/simulation/components/UnitAI.js
+++ binaries/data/mods/public/simulation/components/UnitAI.js
@@ -1314,6 +1314,8 @@
"enter": function() {
this.formationOffset = { "x": this.order.data.x, "z": this.order.data.z };
let cmpUnitMotion = Engine.QueryInterface(this.entity, IID_UnitMotion);
+ // Prevent unit to turn when stopmoving is called.
+ cmpUnitMotion.SetFacePointAfterMove(false);
cmpUnitMotion.MoveToFormationOffset(this.order.data.target, this.order.data.x, this.order.data.z);
if (this.order.data.offsetsChanged)
{
@@ -1326,6 +1328,7 @@
"leave": function() {
this.StopMoving();
+ this.SetFacePointAfterMove(true);
},
// Occurs when the unit has reached its destination and the controller
@@ -1526,23 +1529,13 @@
this.PushOrder("FormationWalk", {
"target": this.formationController,
"x": this.formationOffset.x,
- "z": this.formationOffset.z,
+ "z": this.formationOffset.z
});
return;
}
if (!this.isIdle)
{
- if (this.formationController)
- {
- let cmpFormationPosition = Engine.QueryInterface(this.formationController, IID_Position);
- if (cmpFormationPosition && cmpFormationPosition.IsInWorld())
- {
- let cmpPosition = Engine.QueryInterface(this.entity, IID_Position);
- if (cmpPosition && cmpPosition.IsInWorld())
- cmpPosition.TurnTo(cmpFormationPosition.GetRotation().y);
- }
- }
this.isIdle = true;
Engine.PostMessage(this.entity, MT_UnitIdleChanged, { "idle": this.isIdle });
}

File Metadata

Mime Type
text/plain
Expires
Mon, Sep 23, 10:26 PM (20 h, 3 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3375114
Default Alt Text
D2548.id10924.diff (2 KB)

Event Timeline