Changeset View
Changeset View
Standalone View
Standalone View
binaries/data/mods/public/simulation/components/TurretHolder.js
Show First 20 Lines • Show All 105 Lines • ▼ Show 20 Lines | OccupyTurret(entity, requestedTurretPoint) | ||||
let cmpUnitAI = Engine.QueryInterface(entity, IID_UnitAI); | let cmpUnitAI = Engine.QueryInterface(entity, IID_UnitAI); | ||||
if (cmpUnitAI) | if (cmpUnitAI) | ||||
cmpUnitAI.SetTurretStance(); | cmpUnitAI.SetTurretStance(); | ||||
// Remove the unit's obstruction to avoid interfering with pathing. | // Remove the unit's obstruction to avoid interfering with pathing. | ||||
let cmpObstruction = Engine.QueryInterface(entity, IID_Obstruction); | let cmpObstruction = Engine.QueryInterface(entity, IID_Obstruction); | ||||
if (cmpObstruction) | if (cmpObstruction) | ||||
cmpObstruction.SetActive(false); | cmpObstruction.SetDisableBlockMovementPathfinding(true, true, -1); | ||||
Engine.PostMessage(this.entity, MT_TurretsChanged, { | Engine.PostMessage(this.entity, MT_TurretsChanged, { | ||||
"added": [entity], | "added": [entity], | ||||
"removed": [] | "removed": [] | ||||
}); | }); | ||||
return true; | return true; | ||||
} | } | ||||
Show All 40 Lines | LeaveTurret(entity, requestedTurretPoint) | ||||
if (cmpUnitAIEntity) | if (cmpUnitAIEntity) | ||||
cmpUnitAIEntity.ResetTurretStance(); | cmpUnitAIEntity.ResetTurretStance(); | ||||
turretPoint.entity = null; | turretPoint.entity = null; | ||||
// Reset the obstruction flags to template defaults. | // Reset the obstruction flags to template defaults. | ||||
let cmpObstruction = Engine.QueryInterface(entity, IID_Obstruction); | let cmpObstruction = Engine.QueryInterface(entity, IID_Obstruction); | ||||
if (cmpObstruction) | if (cmpObstruction) | ||||
cmpObstruction.SetActive(true); | cmpObstruction.SetDisableBlockMovementPathfinding(false, false, -1); | ||||
Engine.PostMessage(this.entity, MT_TurretsChanged, { | Engine.PostMessage(this.entity, MT_TurretsChanged, { | ||||
"added": [], | "added": [], | ||||
"removed": [entity] | "removed": [entity] | ||||
}); | }); | ||||
return true; | return true; | ||||
} | } | ||||
▲ Show 20 Lines • Show All 152 Lines • Show Last 20 Lines |
Wildfire Games · Phabricator