SYMBOL INDEX (204 symbols across 14 files) FILE: appCharacters.js class Character (line 13) | class Character extends GameObject method constructor (line 15) | constructor(pos, sizeScale = 1) method update (line 41) | update() method render (line 211) | render() method damage (line 241) | damage(damage, damagingObject) method kill (line 268) | kill(damagingObject) method collideWithTile (line 296) | collideWithTile(data, pos) method collideWithObject (line 330) | collideWithObject(o) function alertEnemies (line 366) | function alertEnemies(pos, playerPos) class Enemy (line 373) | class Enemy extends Character method constructor (line 375) | constructor(pos) method update (line 439) | update() method alert (line 630) | alert(playerPos, resetSawPlayer) method damage (line 647) | damage(damage, damagingObject) method kill (line 658) | kill(damagingObject) class Player (line 670) | class Player extends Character method constructor (line 672) | constructor(pos, playerIndex=0) method update (line 703) | update() FILE: appEffects.js function makeBlood (line 38) | function makeBlood(pos, amount=50) function makeFire (line 53) | function makeFire(pos = vec2()) function makeDebris (line 65) | function makeDebris(pos, color = new Color, amount = 100) function makeWater (line 82) | function makeWater(pos, amount=400) function explosion (line 131) | function explosion(pos, radius=2) class TileCascadeDestroy (line 207) | class TileCascadeDestroy extends EngineObject method constructor (line 209) | constructor(pos, cascadeChance=1, glass=0) method update (line 216) | update() function decorateBackgroundTile (line 226) | function decorateBackgroundTile(pos) function decorateTile (line 255) | function decorateTile(pos) function destroyTile (line 299) | function destroyTile(pos, makeSound = 1, cleanNeighbors = 1, maxCascadeC... function drawStars (line 347) | function drawStars() function updateSky (line 382) | function updateSky() function generateParallaxLayers (line 412) | function generateParallaxLayers() function updateParallaxLayers (line 437) | function updateParallaxLayers() FILE: appLevel.js function buildTerrain (line 48) | function buildTerrain(size) function spawnProps (line 116) | function spawnProps(pos) function buildBase (line 139) | function buildBase() function generateLevel (line 289) | function generateLevel() function makeTileLayers (line 343) | function makeTileLayers(level_) function applyArtToLevel (line 433) | function applyArtToLevel() function nextLevel (line 483) | function nextLevel() FILE: appObjects.js class GameObject (line 9) | class GameObject extends EngineObject method constructor (line 11) | constructor(pos, size, tileIndex, tileSize, angle) method inUpdateWindow (line 26) | inUpdateWindow() { return levelWarmup || isOverlapping(this.pos, this.... method update (line 28) | update() method render (line 78) | render() method burnColorPercent (line 83) | burnColorPercent() { return lerp(this.burnTimer.getPercent(), .2, 1); } method burn (line 85) | burn(instant) method extinguish (line 110) | extinguish() method heal (line 124) | heal(health) method damage (line 134) | damage(damage, damagingObject) method isDead (line 154) | isDead() { return !this.health; } method kill (line 155) | kill(damagingObject) { this.destroy(); } method collideWithObject (line 157) | collideWithObject(o) class Prop (line 185) | class Prop extends GameObject method constructor (line 187) | constructor(pos, typeOverride) method update (line 275) | update() method damage (line 285) | damage(damage, damagingObject) method kill (line 291) | kill() class Checkpoint (line 311) | class Checkpoint extends GameObject method constructor (line 313) | constructor(pos) method update (line 323) | update() method setActive (line 333) | setActive() method render (line 343) | render() class Grenade (line 356) | class Grenade extends GameObject method constructor (line 358) | constructor(pos) method update (line 371) | update() method render (line 391) | render() class Weapon (line 406) | class Weapon extends EngineObject method constructor (line 408) | constructor(pos, parent) method update (line 434) | update() class Bullet (line 476) | class Bullet extends EngineObject method constructor (line 478) | constructor(pos, attacker) method update (line 493) | update() method collideWithObject (line 524) | collideWithObject(o) method collideWithTile (line 542) | collideWithTile(data, pos) method kill (line 554) | kill() method render (line 575) | render() FILE: engine/engine.js constant FPS (line 27) | const FPS = 60, timeDelta = 1/FPS; function engineInit (line 52) | function engineInit(appInit, appUpdate, appUpdatePost, appRender, appRen... function engineUpdateObjects (line 187) | function engineUpdateObjects() function forEachObject (line 206) | function forEachObject(pos, size=0, callbackFunction=(o)=>1, collideObje... FILE: engine/engineAudio.js function playSound (line 20) | function playSound(zzfxSound, pos, range=defaultSoundRange, volumeScale=1) function playMusic (line 39) | function playMusic(zzfxmMusic, loop=1) function speak (line 50) | function speak(text, language='', volume=1, rate=1, pitch=1) function zzfx (line 73) | function zzfx( function zzfxM (line 176) | function zzfxM(instruments, patterns, sequence, BPM = 125) FILE: engine/engineDebug.js constant ASSERT (line 28) | const ASSERT = enableAsserts ? (...assert)=> console.assert(...assert) :... FILE: engine/engineDraw.js function drawTile (line 19) | function drawTile(pos, size=vec2(1), tileIndex=-1, tileSize=defaultTileS... function drawRect (line 71) | function drawRect(pos, size, color, angle) function drawTileScreenSpace (line 77) | function drawTileScreenSpace(pos, size=vec2(1), tileIndex, tileSize, col... function drawRectScreenSpace (line 83) | function drawRectScreenSpace(pos, size, color, angle) function drawLine (line 89) | function drawLine(posA, posB, thickness=.1, color) function drawCanvas2D (line 97) | function drawCanvas2D(pos, size, angle, mirror, drawFunction) function drawText (line 111) | function drawText(text, pos, size=1, color=new Color, lineWidth=0, lineC... function setBlendMode (line 128) | function setBlendMode(additive) FILE: engine/engineInput.js function updateGamepads (line 72) | function updateGamepads() FILE: engine/engineObject.js class EngineObject (line 28) | class EngineObject method constructor (line 30) | constructor(pos, size=defaultObjectSize, tileIndex=-1, tileSize=defaul... method update (line 58) | update() method render (line 207) | render() method destroy (line 213) | destroy() method collideWithTile (line 224) | collideWithTile(data, pos) { return data > 0; } method collideWithTileRaycast (line 225) | collideWithTileRaycast(data, pos) { return data > 0; } method collideWithObject (line 226) | collideWithObject(o) { return 1; } method getAliveTime (line 227) | getAliveTime() { return time - this.spawnTime; } method applyAcceleration (line 228) | applyAcceleration(a) { ASSERT(!this.isFixed()); this.velo... method applyForce (line 229) | applyForce(force) { this.applyAcceleration(force.scale(1... method isFixed (line 230) | isFixed() { return !this.mass; } method getMirrorSign (line 231) | getMirrorSign(s=1) { return this.mirror ? -s : s; } method addChild (line 233) | addChild(child, localPos=vec2(), localAngle=0) method removeChild (line 241) | removeChild(child) method setCollision (line 248) | setCollision(collideSolidObjects=1, isSolid, collideTiles=1) FILE: engine/engineParticle.js class ParticleEmitter (line 10) | class ParticleEmitter extends EngineObject method constructor (line 12) | constructor method update (line 76) | update() method emitParticle (line 98) | emitParticle() method render (line 149) | render() {} class Particle (line 155) | class Particle extends EngineObject method constructor (line 157) | constructor(pos, tileIndex, tileSize, angle) { super(pos, new Vector2,... method render (line 159) | render() FILE: engine/engineTileLayer.js function initTileCollision (line 22) | function initTileCollision(size) function tileCollisionTest (line 36) | function tileCollisionTest(pos, size=vec2(), object) function tileCollisionRaycast (line 54) | function tileCollisionRaycast(posStart, posEnd, object) class TileLayerData (line 86) | class TileLayerData method constructor (line 88) | constructor(tile=-1, direction=0, mirror=0, color=new Color) method clear (line 95) | clear() { this.tile = this.direction = this.mirror = 0; color = new Co... class TileLayer (line 98) | class TileLayer extends EngineObject method constructor (line 100) | constructor(pos, size, scale=vec2(1), layer=0) method destroy (line 120) | destroy() method setData (line 127) | setData(layerPos, data, redraw) method getData (line 136) | getData(layerPos) method update (line 139) | update() {} method render (line 140) | render() method redraw (line 156) | redraw() method redrawStart (line 164) | redrawStart(clear = 1) method redrawEnd (line 189) | redrawEnd() method drawTileData (line 199) | drawTileData(layerPos) method drawAllTileData (line 211) | drawAllTileData() method drawCanvas2D (line 219) | drawCanvas2D(pos, size, angle, mirror, drawFunction) method drawTile (line 232) | drawTile(pos, size=vec2(1), tileIndex=0, tileSize=defaultTileSize, col... method drawRect (line 254) | drawRect(pos, size, color, angle) { this.drawTile(pos, size, -1, 0, co... FILE: engine/engineUtil.js class Vector2 (line 43) | class Vector2 method constructor (line 45) | constructor(x=0, y=0) { this.x = x; this.y = y; } method copy (line 48) | copy() { return new Vector2(this.x, this.y); } method scale (line 49) | scale(s) { ASSERT(s.x==undefined); return new Vector2(thi... method add (line 50) | add(v) { ASSERT(v.x!=undefined); return new Vector2(thi... method subtract (line 51) | subtract(v) { ASSERT(v.x!=undefined); return new Vector2(thi... method multiply (line 52) | multiply(v) { ASSERT(v.x!=undefined); return new Vector2(thi... method divide (line 53) | divide(v) { ASSERT(v.x!=undefined); return new Vector2(thi... method length (line 56) | length() { return this.lengthSquared()**.5; } method lengthSquared (line 57) | lengthSquared() { return this.x**2 + this.y**2; } method distance (line 58) | distance(p) { return this.distanceSquared(p)**.5; } method distanceSquared (line 59) | distanceSquared(p) { return (this.x - p.x)**2 + (this.y - p.y)**2; } method normalize (line 60) | normalize(length=1) { const l = this.length(); return l ? this.scale... method clampLength (line 61) | clampLength(length=1) { const l = this.length(); return l > length ? t... method dot (line 62) | dot(v) { ASSERT(v.x!=undefined); return this.x*v.x + th... method cross (line 63) | cross(v) { ASSERT(v.x!=undefined); return this.x*v.y - th... method angle (line 64) | angle() { return Math.atan2(this.x, this.y); } method setAngle (line 65) | setAngle(a, length=1) { this.x = length*Math.sin(a); this.y = length*M... method rotate (line 66) | rotate(a) { const c = Math.cos(a), s = Math.sin(a); return... method direction (line 67) | direction() { return abs(this.x) > abs(this.y) ? this.x < 0 ... method flip (line 68) | flip() { return new Vector2(this.y, this.x); } method invert (line 69) | invert() { return new Vector2(this.y, -this.x); } method round (line 70) | round() { return new Vector2(Math.round(this.x), Math.ro... method lerp (line 71) | lerp(v, p) { ASSERT(v.x!=undefined); return this.add(v.subt... method int (line 72) | int() { return new Vector2(this.x|0, this.y|0); } method area (line 73) | area() { return this.x * this.y; } method arrayCheck (line 74) | arrayCheck(arraySize) { return this.x >= 0 && this.y >= 0 && this.x < ... class Color (line 78) | class Color method constructor (line 80) | constructor(r=1, g=1, b=1, a=1) { this.r=r; this.g=g; this.b=b; this.a... method copy (line 82) | copy(c) { return new Color(this.r, this.g, this.b, this.a); } method add (line 83) | add(c) { return new Color(this.r+c.r, this.g+c.g, this.b+c.b, thi... method subtract (line 84) | subtract(c) { return new Color(this.r-c.r, this.g-c.g, this.b-c.b, thi... method multiply (line 85) | multiply(c) { return new Color(this.r*c.r, this.g*c.g, this.b*c.b, thi... method scale (line 86) | scale(s,a=s){ return new Color(this.r*s, this.g*s, this.b*s, this.a*a); } method clamp (line 87) | clamp() { return new Color(clamp(this.r), clamp(this.g), clamp(thi... method lerp (line 88) | lerp(c, p) { return this.add(c.subtract(this).scale(clamp(p))); } method mutate (line 89) | mutate(amount=.05, alphaAmount=0) method rgba (line 99) | rgba() method rgbaInt (line 104) | rgbaInt() method setHSLA (line 109) | setHSLA(h=0, s=0, l=1, a=1) class Timer (line 126) | class Timer method constructor (line 128) | constructor(timeLeft) { this.time = timeLeft == undefined ? undefine... method set (line 130) | set(timeLeft=0) { this.time = time + timeLeft; this.setTime = timeLeft; } method unset (line 131) | unset() { this.time = undefined; } method isSet (line 132) | isSet() { return this.time != undefined; } method active (line 133) | active() { return time <= this.time; } method elapsed (line 134) | elapsed() { return time > this.time; } method get (line 135) | get() { return this.isSet()? time - this.time : 0; } method getPercent (line 136) | getPercent() { return this.isSet()? percent(this.time - time, 0, th... FILE: engine/engineWebGL.js function glInit (line 17) | function glInit() function glSetBlendMode (line 85) | function glSetBlendMode(additive) function glCompileShader (line 102) | function glCompileShader(source, type) function glCreateProgram (line 117) | function glCreateProgram(vsSource, fsSource) function glCreateBuffer (line 133) | function glCreateBuffer(bufferType, size, usage) function glCreateTexture (line 144) | function glCreateTexture(image) function glPreRender (line 155) | function glPreRender(width, height) function glFlush (line 181) | function glFlush() function glCopyToContext (line 193) | function glCopyToContext(context, forceDraw) function glDraw (line 209) | function glDraw(x, y, sizeX, sizeY, angle, mirror, uv0X, uv0Y, uv1X, uv1... constant VERTICES_PER_QUAD (line 300) | const constant INDICIES_PER_VERT (line 300) | const constant MAX_BATCH (line 300) | const constant VERTEX_STRIDE (line 300) | const