mirror of
https://gitea.wildfiregames.com/0ad/0ad
synced 2026-06-16 05:13:58 -07:00
Enable eslint rule 'no-redeclare'
Enable recommended rule 'no-redeclare' [1] and manually fix violations. [1] https://eslint.org/docs/latest/rules/no-redeclare Ref: #8068 Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
This commit is contained in:
parent
d5f4c812ea
commit
97a82cbc4a
10 changed files with 112 additions and 103 deletions
|
|
@ -181,14 +181,14 @@ function FSM(spec)
|
|||
fsm.states[path.join(".")] = state;
|
||||
|
||||
var newhandlers = {};
|
||||
for (var e in handlers)
|
||||
for (const e in handlers)
|
||||
newhandlers[e] = handlers[e];
|
||||
|
||||
state._name = path.join(".");
|
||||
state._parent = path.slice(0, -1).join(".");
|
||||
state._refs = {};
|
||||
|
||||
for (var key in node)
|
||||
for (const key in node)
|
||||
{
|
||||
if (key === "enter" || key === "leave")
|
||||
{
|
||||
|
|
@ -207,10 +207,10 @@ function FSM(spec)
|
|||
}
|
||||
}
|
||||
|
||||
for (var e in newhandlers)
|
||||
for (const e in newhandlers)
|
||||
state[e] = newhandlers[e];
|
||||
|
||||
for (var key in node)
|
||||
for (const key in node)
|
||||
{
|
||||
if (key.match(/^[A-Z]+$/))
|
||||
{
|
||||
|
|
@ -343,7 +343,7 @@ FSM.prototype.SwitchToNextState = function(obj, nextStateName)
|
|||
if (equalPrefix > 0 && equalPrefix === toState.length)
|
||||
--equalPrefix;
|
||||
|
||||
for (var i = fromState.length-1; i >= equalPrefix; --i)
|
||||
for (let i = fromState.length-1; i >= equalPrefix; --i)
|
||||
{
|
||||
var leave = this.states[fromState[i]].leave;
|
||||
if (leave)
|
||||
|
|
@ -357,7 +357,7 @@ FSM.prototype.SwitchToNextState = function(obj, nextStateName)
|
|||
}
|
||||
}
|
||||
|
||||
for (var i = equalPrefix; i < toState.length; ++i)
|
||||
for (let i = equalPrefix; i < toState.length; ++i)
|
||||
{
|
||||
var enter = this.states[toState[i]].enter;
|
||||
if (enter)
|
||||
|
|
|
|||
|
|
@ -176,10 +176,11 @@ Math.square = function(x)
|
|||
*/
|
||||
Math.exp = function(x)
|
||||
{
|
||||
let iPart;
|
||||
if (x < 0)
|
||||
var iPart = 1/Math.intPow(Math.E, -Math.floor(x));
|
||||
iPart = 1/Math.intPow(Math.E, -Math.floor(x));
|
||||
else
|
||||
var iPart = Math.intPow(Math.E, Math.floor(x));
|
||||
iPart = Math.intPow(Math.E, Math.floor(x));
|
||||
|
||||
if (x === Math.floor(x))
|
||||
// no need to loop if we know the answer
|
||||
|
|
@ -226,9 +227,10 @@ Math.log = function(x)
|
|||
// when implemented in C, just count the number of bits before the fraction
|
||||
// without leading zeros. This may be negative.
|
||||
var log = 0;
|
||||
let i;
|
||||
if (x >= 1)
|
||||
{
|
||||
for (var i = 1; i <= x; i *= 2)
|
||||
for (i = 1; i <= x; i *= 2)
|
||||
log++;
|
||||
|
||||
log--;
|
||||
|
|
@ -236,7 +238,7 @@ Math.log = function(x)
|
|||
}
|
||||
else
|
||||
{
|
||||
for (var i = 1; i > x; i /= 2)
|
||||
for (i = 1; i > x; i /= 2)
|
||||
log--;
|
||||
}
|
||||
// now lb(x) = log + lb(y) with y = x/i. So y \in [1,2)
|
||||
|
|
@ -297,14 +299,14 @@ Math.intPow = function(x, y)
|
|||
|
||||
var result = 1;
|
||||
|
||||
var i = binary.length;
|
||||
var l = binary.length;
|
||||
|
||||
while (y > 0)
|
||||
{
|
||||
if (binary[--i] <= y)
|
||||
if (binary[--l] <= y)
|
||||
{
|
||||
result *= powers[i];
|
||||
y -= binary[i];
|
||||
result *= powers[l];
|
||||
y -= binary[l];
|
||||
}
|
||||
}
|
||||
// error margin = 0 (default JS error)
|
||||
|
|
|
|||
|
|
@ -187,25 +187,27 @@ export function* generateMap(mapSettings)
|
|||
yield 34;
|
||||
|
||||
g_Map.log("Creating forests");
|
||||
var [forestTrees, stragglerTrees] = getTreeCounts(...rBiomeTreeCount(1));
|
||||
var types = [
|
||||
[[tForestFloor2, tMainTerrain, pForest1], [tForestFloor2, pForest1]],
|
||||
[[tForestFloor1, tMainTerrain, pForest2], [tForestFloor1, pForest2]]
|
||||
];
|
||||
{
|
||||
const [forestTrees, stragglerTrees] = getTreeCounts(...rBiomeTreeCount(1));
|
||||
const types = [
|
||||
[[tForestFloor2, tMainTerrain, pForest1], [tForestFloor2, pForest1]],
|
||||
[[tForestFloor1, tMainTerrain, pForest2], [tForestFloor1, pForest2]]
|
||||
];
|
||||
|
||||
var size = forestTrees / (scaleByMapSize(2, 8) * numPlayers) *
|
||||
(currentBiome() == "generic/savanna" ? 2 : 1);
|
||||
const size = forestTrees / (scaleByMapSize(2, 8) * numPlayers) *
|
||||
(currentBiome() == "generic/savanna" ? 2 : 1);
|
||||
|
||||
var num = Math.floor(size / types.length);
|
||||
for (const type of types)
|
||||
createAreas(
|
||||
new ClumpPlacer(forestTrees / num, 0.1, 0.1, Infinity),
|
||||
[
|
||||
new LayeredPainter(type, [2]),
|
||||
new TileClassPainter(clForest)
|
||||
],
|
||||
[avoidClasses(clForest, 10, clHill, 2), stayClasses(clLand, 7)],
|
||||
num);
|
||||
const num = Math.floor(size / types.length);
|
||||
for (const type of types)
|
||||
createAreas(
|
||||
new ClumpPlacer(forestTrees / num, 0.1, 0.1, Infinity),
|
||||
[
|
||||
new LayeredPainter(type, [2]),
|
||||
new TileClassPainter(clForest)
|
||||
],
|
||||
[avoidClasses(clForest, 10, clHill, 2), stayClasses(clLand, 7)],
|
||||
num);
|
||||
}
|
||||
yield 38;
|
||||
|
||||
g_Map.log("Creating dirt patches");
|
||||
|
|
|
|||
|
|
@ -104,7 +104,7 @@ BuildRestrictions.prototype.CheckPlacement = function()
|
|||
if (!cmpPlayer.IsAI())
|
||||
{
|
||||
// Check whether it's in a visible or fogged region
|
||||
var cmpRangeManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager);
|
||||
const cmpRangeManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager);
|
||||
var cmpOwnership = Engine.QueryInterface(this.entity, IID_Ownership);
|
||||
if (!cmpRangeManager || !cmpOwnership)
|
||||
return result; // Fail
|
||||
|
|
@ -141,14 +141,15 @@ BuildRestrictions.prototype.CheckPlacement = function()
|
|||
return result; // Fail
|
||||
|
||||
|
||||
let ret;
|
||||
if (this.template.Category == "Wall")
|
||||
{
|
||||
// for walls, only test the center point
|
||||
var ret = cmpObstruction.CheckFoundation(passClassName, true);
|
||||
ret = cmpObstruction.CheckFoundation(passClassName, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
var ret = cmpObstruction.CheckFoundation(passClassName, false);
|
||||
ret = cmpObstruction.CheckFoundation(passClassName, false);
|
||||
}
|
||||
|
||||
if (ret !== "success")
|
||||
|
|
@ -252,7 +253,7 @@ BuildRestrictions.prototype.CheckPlacement = function()
|
|||
// Check distance restriction
|
||||
if (this.template.Distance)
|
||||
{
|
||||
var cmpRangeManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager);
|
||||
const cmpRangeManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager);
|
||||
var cat = this.template.Distance.FromClass;
|
||||
|
||||
var filter = function(id)
|
||||
|
|
|
|||
|
|
@ -82,7 +82,7 @@ EntityLimits.prototype.Init = function()
|
|||
if (category in this.template.LimitChangers)
|
||||
{
|
||||
this.changers[category] = {};
|
||||
for (var c in this.template.LimitChangers[category])
|
||||
for (const c in this.template.LimitChangers[category])
|
||||
this.changers[category][c] = +this.template.LimitChangers[category][c];
|
||||
}
|
||||
if (category in this.template.LimitRemovers)
|
||||
|
|
@ -90,7 +90,7 @@ EntityLimits.prototype.Init = function()
|
|||
// Keep a copy of removable limits for possible restoration.
|
||||
this.removedLimit[category] = this.limit[category];
|
||||
this.removers[category] = {};
|
||||
for (var c in this.template.LimitRemovers[category])
|
||||
for (const c in this.template.LimitRemovers[category])
|
||||
{
|
||||
this.removers[category][c] = this.template.LimitRemovers[category][c]._string.split(/\s+/);
|
||||
if (c === "RequiredClasses")
|
||||
|
|
@ -251,23 +251,26 @@ EntityLimits.prototype.OnGlobalOwnershipChanged = function(msg)
|
|||
error("EntityLimits component is defined on a non-player entity");
|
||||
return;
|
||||
}
|
||||
let modifier;
|
||||
if (msg.from == cmpPlayer.GetPlayerID())
|
||||
var modifier = -1;
|
||||
modifier = -1;
|
||||
else if (msg.to == cmpPlayer.GetPlayerID())
|
||||
var modifier = 1;
|
||||
modifier = 1;
|
||||
else
|
||||
return;
|
||||
|
||||
// Update entity counts
|
||||
var category = null;
|
||||
var cmpBuildRestrictions = Engine.QueryInterface(msg.entity, IID_BuildRestrictions);
|
||||
if (cmpBuildRestrictions)
|
||||
category = cmpBuildRestrictions.GetCategory();
|
||||
var cmpTrainingRestrictions = Engine.QueryInterface(msg.entity, IID_TrainingRestrictions);
|
||||
if (cmpTrainingRestrictions)
|
||||
category = cmpTrainingRestrictions.GetCategory();
|
||||
if (category)
|
||||
this.ChangeCount(category, modifier);
|
||||
{
|
||||
let category;
|
||||
const cmpBuildRestrictions = Engine.QueryInterface(msg.entity, IID_BuildRestrictions);
|
||||
if (cmpBuildRestrictions)
|
||||
category = cmpBuildRestrictions.GetCategory();
|
||||
const cmpTrainingRestrictions = Engine.QueryInterface(msg.entity, IID_TrainingRestrictions);
|
||||
if (cmpTrainingRestrictions)
|
||||
category = cmpTrainingRestrictions.GetCategory();
|
||||
if (category)
|
||||
this.ChangeCount(category, modifier);
|
||||
}
|
||||
|
||||
// Update entity limits
|
||||
var cmpIdentity = Engine.QueryInterface(msg.entity, IID_Identity);
|
||||
|
|
@ -279,7 +282,7 @@ EntityLimits.prototype.OnGlobalOwnershipChanged = function(msg)
|
|||
if (cmpFoundation)
|
||||
return;
|
||||
var classes = cmpIdentity.GetClassesList();
|
||||
for (var category in this.changers)
|
||||
for (const category in this.changers)
|
||||
for (var c in this.changers[category])
|
||||
if (classes.indexOf(c) >= 0)
|
||||
{
|
||||
|
|
@ -289,7 +292,7 @@ EntityLimits.prototype.OnGlobalOwnershipChanged = function(msg)
|
|||
this.removedLimit[category] += modifier * this.changers[category][c];
|
||||
}
|
||||
|
||||
for (var category in this.removers)
|
||||
for (const category in this.removers)
|
||||
if ("RequiredClasses" in this.removers[category])
|
||||
for (var cls of this.removers[category].RequiredClasses)
|
||||
if (classes.indexOf(cls) !== -1)
|
||||
|
|
|
|||
|
|
@ -379,14 +379,14 @@ TechnologyManager.prototype.OnGlobalOwnershipChanged = function(msg)
|
|||
var playerID = (Engine.QueryInterface(this.entity, IID_Player)).GetPlayerID();
|
||||
if (msg.to == playerID)
|
||||
{
|
||||
var cmpTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TemplateManager);
|
||||
var template = cmpTemplateManager.GetCurrentTemplateName(msg.entity);
|
||||
const cmpTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TemplateManager);
|
||||
const template = cmpTemplateManager.GetCurrentTemplateName(msg.entity);
|
||||
|
||||
var cmpIdentity = Engine.QueryInterface(msg.entity, IID_Identity);
|
||||
const cmpIdentity = Engine.QueryInterface(msg.entity, IID_Identity);
|
||||
if (!cmpIdentity)
|
||||
return;
|
||||
|
||||
var classes = cmpIdentity.GetClassesList();
|
||||
const classes = cmpIdentity.GetClassesList();
|
||||
// don't use foundations for the class counts but check if techs apply (e.g. health increase)
|
||||
if (!Engine.QueryInterface(msg.entity, IID_Foundation))
|
||||
{
|
||||
|
|
@ -403,16 +403,16 @@ TechnologyManager.prototype.OnGlobalOwnershipChanged = function(msg)
|
|||
}
|
||||
if (msg.from == playerID)
|
||||
{
|
||||
var cmpTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TemplateManager);
|
||||
var template = cmpTemplateManager.GetCurrentTemplateName(msg.entity);
|
||||
const cmpTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TemplateManager);
|
||||
const template = cmpTemplateManager.GetCurrentTemplateName(msg.entity);
|
||||
|
||||
// don't use foundations for the class counts
|
||||
if (!Engine.QueryInterface(msg.entity, IID_Foundation))
|
||||
{
|
||||
var cmpIdentity = Engine.QueryInterface(msg.entity, IID_Identity);
|
||||
const cmpIdentity = Engine.QueryInterface(msg.entity, IID_Identity);
|
||||
if (cmpIdentity)
|
||||
{
|
||||
var classes = cmpIdentity.GetClassesList();
|
||||
const classes = cmpIdentity.GetClassesList();
|
||||
for (const cls of classes)
|
||||
{
|
||||
this.classCounts[cls] -= 1;
|
||||
|
|
|
|||
|
|
@ -4197,7 +4197,7 @@ UnitAI.prototype.UpdateWorkOrders = function(type)
|
|||
var cmpUnitAI = Engine.QueryInterface(this.formationController, IID_UnitAI);
|
||||
if (cmpUnitAI)
|
||||
{
|
||||
for (var i = 0; i < cmpUnitAI.orderQueue.length; ++i)
|
||||
for (let i = 0; i < cmpUnitAI.orderQueue.length; ++i)
|
||||
{
|
||||
if (isWorkType(cmpUnitAI.orderQueue[i].type))
|
||||
{
|
||||
|
|
@ -4209,7 +4209,7 @@ UnitAI.prototype.UpdateWorkOrders = function(type)
|
|||
}
|
||||
|
||||
// If nothing found, take the unit orders
|
||||
for (var i = 0; i < this.orderQueue.length; ++i)
|
||||
for (let i = 0; i < this.orderQueue.length; ++i)
|
||||
{
|
||||
if (isWorkType(this.orderQueue[i].type))
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1047,10 +1047,10 @@ function GetDockAngle(template, x, z)
|
|||
* 6. Calculate angle using average of sequence
|
||||
*/
|
||||
const numPoints = 16;
|
||||
for (var dist = 0; dist < 4; ++dist)
|
||||
for (let dist = 0; dist < 4; ++dist)
|
||||
{
|
||||
var waterPoints = [];
|
||||
for (var i = 0; i < numPoints; ++i)
|
||||
for (let i = 0; i < numPoints; ++i)
|
||||
{
|
||||
var angle = (i/numPoints)*2*Math.PI;
|
||||
var d = halfSize*(dist+1);
|
||||
|
|
@ -1064,9 +1064,9 @@ function GetDockAngle(template, x, z)
|
|||
var length = waterPoints.length;
|
||||
if (!length)
|
||||
continue;
|
||||
for (var i = 0; i < length; ++i)
|
||||
for (let i = 0; i < length; ++i)
|
||||
{
|
||||
var count = 0;
|
||||
let count = 0;
|
||||
for (let j = 0; j < length - 1; ++j)
|
||||
{
|
||||
if ((waterPoints[(i + j) % length] + 1) % numPoints == waterPoints[(i + j + 1) % length])
|
||||
|
|
@ -1076,9 +1076,9 @@ function GetDockAngle(template, x, z)
|
|||
}
|
||||
consec[i] = count;
|
||||
}
|
||||
var start = 0;
|
||||
var count = 0;
|
||||
for (var c in consec)
|
||||
let start = 0;
|
||||
let count = 0;
|
||||
for (const c in consec)
|
||||
{
|
||||
if (consec[c] > count)
|
||||
{
|
||||
|
|
@ -1191,7 +1191,7 @@ function TryConstructBuilding(player, cmpPlayer, controlAllUnits, cmd)
|
|||
if (g_DebugCommands)
|
||||
warn("Invalid command: build restrictions check failed with '"+ret.message+"' for player "+player+": "+uneval(cmd));
|
||||
|
||||
var cmpGuiInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
const cmpGuiInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
ret.players = [player];
|
||||
cmpGuiInterface.PushNotification(ret);
|
||||
|
||||
|
|
@ -1224,7 +1224,7 @@ function TryConstructBuilding(player, cmpPlayer, controlAllUnits, cmd)
|
|||
if (g_DebugCommands)
|
||||
warn("Invalid command: required technology check failed for player "+player+": "+uneval(cmd));
|
||||
|
||||
var cmpGuiInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
const cmpGuiInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
cmpGuiInterface.PushNotification({
|
||||
"type": "text",
|
||||
"players": [player],
|
||||
|
|
@ -1379,7 +1379,7 @@ function TryConstructWall(player, cmpPlayer, controlAllUnits, cmd)
|
|||
var pieces = clone(cmd.pieces);
|
||||
for (; i < pieces.length; ++i)
|
||||
{
|
||||
var piece = pieces[i];
|
||||
const piece = pieces[i];
|
||||
|
||||
// All wall pieces after the first must be queued.
|
||||
if (i > 0 && !queued)
|
||||
|
|
@ -1475,9 +1475,9 @@ function TryConstructWall(player, cmpPlayer, controlAllUnits, cmd)
|
|||
lastTowerControlGroup = cmpSnappedEndObstruction.GetControlGroup();
|
||||
}
|
||||
|
||||
for (var j = lastBuiltPieceIndex; j >= 0; --j)
|
||||
for (let j = lastBuiltPieceIndex; j >= 0; --j)
|
||||
{
|
||||
var piece = pieces[j];
|
||||
const piece = pieces[j];
|
||||
|
||||
if (!piece.ent)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ const configEslintRecommended = {
|
|||
"no-func-assign": "warn",
|
||||
"no-irregular-whitespace": "warn",
|
||||
"no-obj-calls": "warn",
|
||||
"no-redeclare": "off",
|
||||
"no-redeclare": "warn",
|
||||
"no-self-assign": "warn",
|
||||
"no-shadow-restricted-names": "warn",
|
||||
"no-undef": "off",
|
||||
|
|
|
|||
|
|
@ -205,7 +205,7 @@ class Profiler2Report
|
|||
var last_frame_time_start;
|
||||
|
||||
var stack = [];
|
||||
for (var i = 0; i < data.length; ++i)
|
||||
for (let i = 0; i < data.length; ++i)
|
||||
{
|
||||
if (data[i][0] == this.ITEM_EVENT && data[i][2] == '__framestart')
|
||||
{
|
||||
|
|
@ -224,7 +224,7 @@ class Profiler2Report
|
|||
}
|
||||
if (range.numframes)
|
||||
{
|
||||
for (var i = data.length - 1; i > 0; --i)
|
||||
for (let i = data.length - 1; i > 0; --i)
|
||||
{
|
||||
if (data[i][0] == this.ITEM_EVENT && data[i][2] == '__framestart')
|
||||
{
|
||||
|
|
@ -234,7 +234,7 @@ class Profiler2Report
|
|||
}
|
||||
|
||||
var framesfound = 0;
|
||||
for (var i = end - 1; i > 0; --i)
|
||||
for (let i = end - 1; i > 0; --i)
|
||||
{
|
||||
if (data[i][0] == this.ITEM_EVENT && data[i][2] == '__framestart')
|
||||
{
|
||||
|
|
@ -249,10 +249,10 @@ class Profiler2Report
|
|||
}
|
||||
else if (range.seconds)
|
||||
{
|
||||
var end = data.length - 1;
|
||||
for (var i = end; i > 0; --i)
|
||||
end = data.length - 1;
|
||||
for (let i = end; i > 0; --i)
|
||||
{
|
||||
var type = data[i][0];
|
||||
const type = data[i][0];
|
||||
if (type == this.ITEM_EVENT || type == this.ITEM_ENTER || type == this.ITEM_LEAVE)
|
||||
{
|
||||
tmax = data[i][1];
|
||||
|
|
@ -261,9 +261,9 @@ class Profiler2Report
|
|||
}
|
||||
tmin = tmax - range.seconds;
|
||||
|
||||
for (var i = end; i > 0; --i)
|
||||
for (let i = end; i > 0; --i)
|
||||
{
|
||||
var type = data[i][0];
|
||||
const type = data[i][0];
|
||||
if ((type == this.ITEM_EVENT || type == this.ITEM_ENTER || type == this.ITEM_LEAVE) && data[i][1] < tmin)
|
||||
break;
|
||||
start = i;
|
||||
|
|
@ -276,9 +276,9 @@ class Profiler2Report
|
|||
tmin = range.tmin;
|
||||
tmax = range.tmax;
|
||||
|
||||
for (var i = data.length-1; i > 0; --i)
|
||||
for (let i = data.length-1; i > 0; --i)
|
||||
{
|
||||
var type = data[i][0];
|
||||
const type = data[i][0];
|
||||
if ((type == this.ITEM_EVENT || type == this.ITEM_ENTER || type == this.ITEM_LEAVE) && data[i][1] < tmax)
|
||||
{
|
||||
end = i;
|
||||
|
|
@ -286,9 +286,9 @@ class Profiler2Report
|
|||
}
|
||||
}
|
||||
|
||||
for (var i = end; i > 0; --i)
|
||||
for (let i = end; i > 0; --i)
|
||||
{
|
||||
var type = data[i][0];
|
||||
const type = data[i][0];
|
||||
if ((type == this.ITEM_EVENT || type == this.ITEM_ENTER || type == this.ITEM_LEAVE) && data[i][1] < tmin)
|
||||
break;
|
||||
start = i;
|
||||
|
|
@ -314,30 +314,31 @@ class Profiler2Report
|
|||
var events = [];
|
||||
|
||||
// Read events for the entire data period (not just start..end)
|
||||
var lastWasEvent = false;
|
||||
for (var i = 0; i < data.length; ++i)
|
||||
{
|
||||
if (data[i][0] == this.ITEM_EVENT)
|
||||
let lastWasEvent = false;
|
||||
for (let i = 0; i < data.length; ++i)
|
||||
{
|
||||
events.push({ 't': data[i][1], 'id': data[i][2] });
|
||||
lastWasEvent = true;
|
||||
}
|
||||
else if (data[i][0] == this.ITEM_ATTRIBUTE)
|
||||
{
|
||||
if (lastWasEvent)
|
||||
if (data[i][0] == this.ITEM_EVENT)
|
||||
{
|
||||
if (!events[events.length-1].attrs)
|
||||
events[events.length-1].attrs = [];
|
||||
events[events.length-1].attrs.push(data[i][1]);
|
||||
events.push({ 't': data[i][1], 'id': data[i][2] });
|
||||
lastWasEvent = true;
|
||||
}
|
||||
else if (data[i][0] == this.ITEM_ATTRIBUTE)
|
||||
{
|
||||
if (lastWasEvent)
|
||||
{
|
||||
if (!events[events.length-1].attrs)
|
||||
events[events.length-1].attrs = [];
|
||||
events[events.length-1].attrs.push(data[i][1]);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
lastWasEvent = false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
lastWasEvent = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var intervals = [];
|
||||
var intervals_by_type = {};
|
||||
|
||||
|
|
@ -346,7 +347,7 @@ class Profiler2Report
|
|||
var lastT = 0;
|
||||
var lastWasEvent = false;
|
||||
|
||||
for (var i = start; i <= end; ++i)
|
||||
for (let i = start; i <= end; ++i)
|
||||
{
|
||||
if (data[i][0] == this.ITEM_EVENT)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in a new issue