mirror of
https://github.com/genxium/DelayNoMore
synced 2024-12-26 11:48:56 +00:00
Drafted anti-air attack for Monk.
This commit is contained in:
parent
934a495d47
commit
71a5a7b727
@ -5506,12 +5506,18 @@ $packages["jsexport/battle"] = (function() {
|
|||||||
}
|
}
|
||||||
patternId = -1;
|
patternId = -1;
|
||||||
if (decodedInput.BtnALevel > prevBtnALevel) {
|
if (decodedInput.BtnALevel > prevBtnALevel) {
|
||||||
patternId = 1;
|
if (0 > effDy) {
|
||||||
|
patternId = 3;
|
||||||
|
} else if (0 < effDy) {
|
||||||
|
patternId = 2;
|
||||||
|
} else {
|
||||||
|
patternId = 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return [patternId, jumpedOrNot, effDx, effDy];
|
return [patternId, jumpedOrNot, effDx, effDy];
|
||||||
};
|
};
|
||||||
ApplyInputFrameDownsyncDynamicsOnSingleRenderFrame = function(inputsBuffer, currRenderFrame, collisionSys, collisionSysMap, collisionSpaceOffsetX, collisionSpaceOffsetY, chConfigsOrderedByJoinIndex) {
|
ApplyInputFrameDownsyncDynamicsOnSingleRenderFrame = function(inputsBuffer, currRenderFrame, collisionSys, collisionSysMap, collisionSpaceOffsetX, collisionSpaceOffsetY, chConfigsOrderedByJoinIndex) {
|
||||||
var {_1, _2, _entry, _entry$1, _entry$2, _entry$3, _entry$4, _entry$5, _i, _i$1, _i$10, _i$11, _i$12, _i$2, _i$3, _i$4, _i$5, _i$6, _i$7, _i$8, _i$9, _index, _index$1, _index$2, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _ref, _ref$1, _ref$10, _ref$11, _ref$12, _ref$13, _ref$14, _ref$15, _ref$16, _ref$17, _ref$18, _ref$2, _ref$3, _ref$4, _ref$5, _ref$6, _ref$7, _ref$8, _ref$9, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$18, _tmp$19, _tmp$2, _tmp$20, _tmp$21, _tmp$22, _tmp$23, _tmp$24, _tmp$25, _tmp$26, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, _tuple$10, _tuple$11, _tuple$12, _tuple$13, _tuple$14, _tuple$15, _tuple$16, _tuple$17, _tuple$2, _tuple$3, _tuple$4, _tuple$5, _tuple$6, _tuple$7, _tuple$8, _tuple$9, addToNextRenderFrame, atkedPlayerInNextFrame, atkedPlayerInNextFrame$1, bShape, bulletCollider, bulletColliders, bulletLocalId, bulletShape, bulletShape$1, bulletWx, bulletWx$1, bulletWy, bulletWy$1, chConfig, chConfig$1, chConfig$2, chConfigsOrderedByJoinIndex, colliderHeight, colliderWidth, colliderWorldHeight, colliderWorldWidth, collision, collision$1, collisionSpaceOffsetX, collisionSpaceOffsetY, collisionSys, collisionSysMap, currPlayerDownsync, currPlayerDownsync$1, currPlayerDownsync$2, currPlayerDownsync$3, currPlayerDownsync$4, currRenderFrame, defenderShape, defenderShape$1, effDx, effDy, effPushbacks, existent, existent$1, existent$2, existent$3, existent$4, existent$5, fireballBullet, halfColliderHeightDiff, halfColliderWidthDiff, halfColliderWorldHeightDiff, hardPushbackNorm, hardPushbackNorms, hasLockVel, hitboxSizeWx, hitboxSizeWx$1, hitboxSizeWy, hitboxSizeWy$1, i, i$1, i$2, i$3, i$4, inputsBuffer, isAnotherPlayer, isBarrier, isBullet, joinIndex, joinIndex$1, joinIndex$2, joinIndex$3, jumpedOrNot, jumpedOrNotList, landedOnGravityPushback, meleeBullet, newBullet, newBullet$1, newBulletCollider, newBulletCollider$1, newVx, newVy, nextRenderFrameFireballBullets, nextRenderFrameMeleeBullets, nextRenderFramePlayers, normAlignmentWithGravity, obj, obj$1, obj$2, offender, offender$1, offender$2, oldFramesToRecover, oldFramesToRecover$1, oldNextCharacterState, overlapResult, overlapped, overlapped$1, overlapped$2, patternId, playerCollider, playerCollider$1, playerCollider$2, playerCollider$3, playerColliders, playerShape, projectedMagnitude, pushbackVelX, pushbackVelX$1, pushbackVelY, pushbackVelY$1, pushbackX, pushbackY, roomCapacity, skillConfig, skillId, t, t$1, t$2, t$3, thatPlayerInNextFrame, thatPlayerInNextFrame$1, thatPlayerInNextFrame$2, thatPlayerInNextFrame$3, v, v$1, v$2, v$3, v$4, v$5, wx, wy, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, xfac, xfac$1, xfac$2, xfac$3, xfac$4, $s, $r, $c} = $restore(this, {inputsBuffer, currRenderFrame, collisionSys, collisionSysMap, collisionSpaceOffsetX, collisionSpaceOffsetY, chConfigsOrderedByJoinIndex});
|
var {_1, _2, _entry, _entry$1, _entry$2, _entry$3, _entry$4, _entry$5, _i, _i$1, _i$10, _i$11, _i$12, _i$2, _i$3, _i$4, _i$5, _i$6, _i$7, _i$8, _i$9, _index, _index$1, _index$2, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _ref, _ref$1, _ref$10, _ref$11, _ref$12, _ref$13, _ref$14, _ref$15, _ref$16, _ref$17, _ref$18, _ref$2, _ref$3, _ref$4, _ref$5, _ref$6, _ref$7, _ref$8, _ref$9, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$18, _tmp$19, _tmp$2, _tmp$20, _tmp$21, _tmp$22, _tmp$23, _tmp$24, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, _tuple$10, _tuple$11, _tuple$12, _tuple$13, _tuple$14, _tuple$15, _tuple$16, _tuple$17, _tuple$2, _tuple$3, _tuple$4, _tuple$5, _tuple$6, _tuple$7, _tuple$8, _tuple$9, addToNextRenderFrame, atkedPlayerInNextFrame, atkedPlayerInNextFrame$1, bShape, bulletCollider, bulletColliders, bulletLocalId, bulletShape, bulletShape$1, bulletWx, bulletWx$1, bulletWy, bulletWy$1, chConfig, chConfig$1, chConfig$2, chConfigsOrderedByJoinIndex, colliderHeight, colliderWidth, colliderWorldHeight, colliderWorldWidth, collision, collision$1, collisionSpaceOffsetX, collisionSpaceOffsetY, collisionSys, collisionSysMap, currPlayerDownsync, currPlayerDownsync$1, currPlayerDownsync$2, currPlayerDownsync$3, currPlayerDownsync$4, currRenderFrame, defenderShape, defenderShape$1, effDx, effDy, effPushbacks, existent, existent$1, existent$2, existent$3, existent$4, existent$5, fireballBullet, halfColliderHeightDiff, halfColliderWidthDiff, halfColliderWorldHeightDiff, hardPushbackNorm, hardPushbackNorms, hasLockVel, hitboxSizeWx, hitboxSizeWx$1, hitboxSizeWy, hitboxSizeWy$1, i, i$1, i$2, i$3, i$4, inputsBuffer, isAnotherPlayer, isBarrier, isBullet, joinIndex, joinIndex$1, joinIndex$2, joinIndex$3, jumpedOrNot, jumpedOrNotList, landedOnGravityPushback, meleeBullet, newBullet, newBullet$1, newBulletCollider, newBulletCollider$1, newVx, newVy, nextRenderFrameFireballBullets, nextRenderFrameMeleeBullets, nextRenderFramePlayers, normAlignmentWithGravity, obj, obj$1, obj$2, offender, offender$1, offender$2, oldFramesToRecover, oldFramesToRecover$1, oldNextCharacterState, overlapResult, overlapped, overlapped$1, overlapped$2, patternId, playerCollider, playerCollider$1, playerCollider$2, playerCollider$3, playerColliders, playerShape, projectedMagnitude, pushbackVelX, pushbackVelX$1, pushbackVelY, pushbackVelY$1, pushbackX, pushbackY, roomCapacity, skillConfig, skillId, t, t$1, t$2, t$3, thatPlayerInNextFrame, thatPlayerInNextFrame$1, thatPlayerInNextFrame$2, thatPlayerInNextFrame$3, v, v$1, v$2, v$3, v$4, v$5, wx, wy, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, xfac, xfac$1, xfac$2, xfac$3, $s, $r, $c} = $restore(this, {inputsBuffer, currRenderFrame, collisionSys, collisionSysMap, collisionSpaceOffsetX, collisionSpaceOffsetY, chConfigsOrderedByJoinIndex});
|
||||||
/* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
|
/* */ $s = $s || 0; s: while (true) { switch ($s) { case 0:
|
||||||
roomCapacity = currRenderFrame.PlayersArr.$length;
|
roomCapacity = currRenderFrame.PlayersArr.$length;
|
||||||
nextRenderFramePlayers = $makeSlice(sliceType$6, roomCapacity);
|
nextRenderFramePlayers = $makeSlice(sliceType$6, roomCapacity);
|
||||||
@ -5593,22 +5599,20 @@ $packages["jsexport/battle"] = (function() {
|
|||||||
newBullet$1[0] = $clone(v$1, FireballBullet);
|
newBullet$1[0] = $clone(v$1, FireballBullet);
|
||||||
newBullet$1[0].Bullet.BulletLocalId = bulletLocalId;
|
newBullet$1[0].Bullet.BulletLocalId = bulletLocalId;
|
||||||
bulletLocalId = bulletLocalId + (1) >> 0;
|
bulletLocalId = bulletLocalId + (1) >> 0;
|
||||||
xfac$1 = 1;
|
_tmp = currPlayerDownsync$1.VirtualGridX + ($imul(xfac, newBullet$1[0].Bullet.HitboxOffsetX)) >> 0;
|
||||||
if (0 > thatPlayerInNextFrame.DirX) {
|
_tmp$1 = currPlayerDownsync$1.VirtualGridY + newBullet$1[0].Bullet.HitboxOffsetY >> 0;
|
||||||
xfac$1 = -xfac$1;
|
|
||||||
}
|
|
||||||
_tmp = currPlayerDownsync$1.VirtualGridX + ($imul(xfac$1, newBullet$1[0].Bullet.HitboxOffsetX)) >> 0;
|
|
||||||
_tmp$1 = currPlayerDownsync$1.VirtualGridY;
|
|
||||||
newBullet$1[0].VirtualGridX = _tmp;
|
newBullet$1[0].VirtualGridX = _tmp;
|
||||||
newBullet$1[0].VirtualGridY = _tmp$1;
|
newBullet$1[0].VirtualGridY = _tmp$1;
|
||||||
newBullet$1[0].Bullet.OriginatedRenderFrameId = currRenderFrame.Id;
|
newBullet$1[0].Bullet.OriginatedRenderFrameId = currRenderFrame.Id;
|
||||||
newBullet$1[0].Bullet.OffenderJoinIndex = joinIndex;
|
newBullet$1[0].Bullet.OffenderJoinIndex = joinIndex;
|
||||||
newBullet$1[0].VelX = $imul(newBullet$1[0].Speed, xfac$1);
|
newBullet$1[0].DirX = xfac;
|
||||||
|
newBullet$1[0].DirY = 0;
|
||||||
|
newBullet$1[0].VelX = $imul(newBullet$1[0].Speed, xfac);
|
||||||
newBullet$1[0].VelY = 0;
|
newBullet$1[0].VelY = 0;
|
||||||
nextRenderFrameFireballBullets = $append(nextRenderFrameFireballBullets, newBullet$1[0]);
|
nextRenderFrameFireballBullets = $append(nextRenderFrameFireballBullets, newBullet$1[0]);
|
||||||
if (!((-1 === v$1.Bullet.SelfLockVelX))) {
|
if (!((-1 === v$1.Bullet.SelfLockVelX))) {
|
||||||
hasLockVel = true;
|
hasLockVel = true;
|
||||||
thatPlayerInNextFrame.VelX = $imul(xfac$1, v$1.Bullet.SelfLockVelX);
|
thatPlayerInNextFrame.VelX = $imul(xfac, v$1.Bullet.SelfLockVelX);
|
||||||
}
|
}
|
||||||
if (!((-1 === v$1.Bullet.SelfLockVelY))) {
|
if (!((-1 === v$1.Bullet.SelfLockVelY))) {
|
||||||
hasLockVel = true;
|
hasLockVel = true;
|
||||||
@ -5624,10 +5628,10 @@ $packages["jsexport/battle"] = (function() {
|
|||||||
}
|
}
|
||||||
if (0 === currPlayerDownsync$1.FramesToRecover) {
|
if (0 === currPlayerDownsync$1.FramesToRecover) {
|
||||||
if (!((0 === effDx)) || !((0 === effDy))) {
|
if (!((0 === effDx)) || !((0 === effDy))) {
|
||||||
_tmp$2 = effDx;
|
if (!((0 === effDx))) {
|
||||||
_tmp$3 = effDy;
|
thatPlayerInNextFrame.DirX = effDx;
|
||||||
thatPlayerInNextFrame.DirX = _tmp$2;
|
}
|
||||||
thatPlayerInNextFrame.DirY = _tmp$3;
|
thatPlayerInNextFrame.DirY = effDy;
|
||||||
thatPlayerInNextFrame.VelX = $imul(effDx, currPlayerDownsync$1.Speed);
|
thatPlayerInNextFrame.VelX = $imul(effDx, currPlayerDownsync$1.Speed);
|
||||||
thatPlayerInNextFrame.CharacterState = 1;
|
thatPlayerInNextFrame.CharacterState = 1;
|
||||||
} else {
|
} else {
|
||||||
@ -5646,36 +5650,36 @@ $packages["jsexport/battle"] = (function() {
|
|||||||
i$2 = _i$2;
|
i$2 = _i$2;
|
||||||
currPlayerDownsync$2 = ((_i$2 < 0 || _i$2 >= _ref$3.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$3.$array[_ref$3.$offset + _i$2]);
|
currPlayerDownsync$2 = ((_i$2 < 0 || _i$2 >= _ref$3.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$3.$array[_ref$3.$offset + _i$2]);
|
||||||
joinIndex$1 = currPlayerDownsync$2.JoinIndex;
|
joinIndex$1 = currPlayerDownsync$2.JoinIndex;
|
||||||
_tmp$4 = 0;
|
_tmp$2 = 0;
|
||||||
_tmp$5 = 0;
|
_tmp$3 = 0;
|
||||||
(x$2 = joinIndex$1 - 1 >> 0, ((x$2 < 0 || x$2 >= effPushbacks.$length) ? ($throwRuntimeError("index out of range"), undefined) : effPushbacks.$array[effPushbacks.$offset + x$2])).X = _tmp$4;
|
(x$2 = joinIndex$1 - 1 >> 0, ((x$2 < 0 || x$2 >= effPushbacks.$length) ? ($throwRuntimeError("index out of range"), undefined) : effPushbacks.$array[effPushbacks.$offset + x$2])).X = _tmp$2;
|
||||||
(x$3 = joinIndex$1 - 1 >> 0, ((x$3 < 0 || x$3 >= effPushbacks.$length) ? ($throwRuntimeError("index out of range"), undefined) : effPushbacks.$array[effPushbacks.$offset + x$3])).Y = _tmp$5;
|
(x$3 = joinIndex$1 - 1 >> 0, ((x$3 < 0 || x$3 >= effPushbacks.$length) ? ($throwRuntimeError("index out of range"), undefined) : effPushbacks.$array[effPushbacks.$offset + x$3])).Y = _tmp$3;
|
||||||
chConfig$1 = ((i$2 < 0 || i$2 >= chConfigsOrderedByJoinIndex.$length) ? ($throwRuntimeError("index out of range"), undefined) : chConfigsOrderedByJoinIndex.$array[chConfigsOrderedByJoinIndex.$offset + i$2]);
|
chConfig$1 = ((i$2 < 0 || i$2 >= chConfigsOrderedByJoinIndex.$length) ? ($throwRuntimeError("index out of range"), undefined) : chConfigsOrderedByJoinIndex.$array[chConfigsOrderedByJoinIndex.$offset + i$2]);
|
||||||
_tmp$6 = currPlayerDownsync$2.VirtualGridX + currPlayerDownsync$2.VelX >> 0;
|
_tmp$4 = currPlayerDownsync$2.VirtualGridX + currPlayerDownsync$2.VelX >> 0;
|
||||||
_tmp$7 = currPlayerDownsync$2.VirtualGridY + currPlayerDownsync$2.VelY >> 0;
|
_tmp$5 = currPlayerDownsync$2.VirtualGridY + currPlayerDownsync$2.VelY >> 0;
|
||||||
newVx = _tmp$6;
|
newVx = _tmp$4;
|
||||||
newVy = _tmp$7;
|
newVy = _tmp$5;
|
||||||
if (((i$2 < 0 || i$2 >= jumpedOrNotList.$length) ? ($throwRuntimeError("index out of range"), undefined) : jumpedOrNotList.$array[jumpedOrNotList.$offset + i$2])) {
|
if (((i$2 < 0 || i$2 >= jumpedOrNotList.$length) ? ($throwRuntimeError("index out of range"), undefined) : jumpedOrNotList.$array[jumpedOrNotList.$offset + i$2])) {
|
||||||
newVy = newVy + (chConfig$1.JumpingInitVelY) >> 0;
|
newVy = newVy + (chConfig$1.JumpingInitVelY) >> 0;
|
||||||
}
|
}
|
||||||
_tuple$2 = VirtualGridToWorldPos(newVx, newVy);
|
_tuple$2 = VirtualGridToWorldPos(newVx, newVy);
|
||||||
wx = _tuple$2[0];
|
wx = _tuple$2[0];
|
||||||
wy = _tuple$2[1];
|
wy = _tuple$2[1];
|
||||||
_tmp$8 = $imul(currPlayerDownsync$2.ColliderRadius, 2);
|
_tmp$6 = $imul(currPlayerDownsync$2.ColliderRadius, 2);
|
||||||
_tmp$9 = $imul(currPlayerDownsync$2.ColliderRadius, 4);
|
_tmp$7 = $imul(currPlayerDownsync$2.ColliderRadius, 4);
|
||||||
colliderWidth = _tmp$8;
|
colliderWidth = _tmp$6;
|
||||||
colliderHeight = _tmp$9;
|
colliderHeight = _tmp$7;
|
||||||
_1 = currPlayerDownsync$2.CharacterState;
|
_1 = currPlayerDownsync$2.CharacterState;
|
||||||
if (_1 === (9)) {
|
if (_1 === (9)) {
|
||||||
_tmp$10 = $imul(currPlayerDownsync$2.ColliderRadius, 4);
|
_tmp$8 = $imul(currPlayerDownsync$2.ColliderRadius, 4);
|
||||||
|
_tmp$9 = $imul(currPlayerDownsync$2.ColliderRadius, 2);
|
||||||
|
colliderWidth = _tmp$8;
|
||||||
|
colliderHeight = _tmp$9;
|
||||||
|
} else if ((_1 === (8)) || (_1 === (4)) || (_1 === (5))) {
|
||||||
|
_tmp$10 = $imul(currPlayerDownsync$2.ColliderRadius, 2);
|
||||||
_tmp$11 = $imul(currPlayerDownsync$2.ColliderRadius, 2);
|
_tmp$11 = $imul(currPlayerDownsync$2.ColliderRadius, 2);
|
||||||
colliderWidth = _tmp$10;
|
colliderWidth = _tmp$10;
|
||||||
colliderHeight = _tmp$11;
|
colliderHeight = _tmp$11;
|
||||||
} else if ((_1 === (8)) || (_1 === (4)) || (_1 === (5))) {
|
|
||||||
_tmp$12 = $imul(currPlayerDownsync$2.ColliderRadius, 2);
|
|
||||||
_tmp$13 = $imul(currPlayerDownsync$2.ColliderRadius, 2);
|
|
||||||
colliderWidth = _tmp$12;
|
|
||||||
colliderHeight = _tmp$13;
|
|
||||||
}
|
}
|
||||||
_tuple$3 = VirtualGridToWorldPos(colliderWidth, colliderHeight);
|
_tuple$3 = VirtualGridToWorldPos(colliderWidth, colliderHeight);
|
||||||
colliderWorldWidth = _tuple$3[0];
|
colliderWorldWidth = _tuple$3[0];
|
||||||
@ -5703,11 +5707,11 @@ $packages["jsexport/battle"] = (function() {
|
|||||||
/* */ $s = 12; continue;
|
/* */ $s = 12; continue;
|
||||||
/* if (((meleeBullet.Bullet.OriginatedRenderFrameId + meleeBullet.Bullet.StartupFrames >> 0) <= currRenderFrame.Id) && (((meleeBullet.Bullet.OriginatedRenderFrameId + meleeBullet.Bullet.StartupFrames >> 0) + meleeBullet.Bullet.ActiveFrames >> 0) > currRenderFrame.Id)) { */ case 10:
|
/* if (((meleeBullet.Bullet.OriginatedRenderFrameId + meleeBullet.Bullet.StartupFrames >> 0) <= currRenderFrame.Id) && (((meleeBullet.Bullet.OriginatedRenderFrameId + meleeBullet.Bullet.StartupFrames >> 0) + meleeBullet.Bullet.ActiveFrames >> 0) > currRenderFrame.Id)) { */ case 10:
|
||||||
offender = (x$4 = currRenderFrame.PlayersArr, x$5 = meleeBullet.Bullet.OffenderJoinIndex - 1 >> 0, ((x$5 < 0 || x$5 >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + x$5]));
|
offender = (x$4 = currRenderFrame.PlayersArr, x$5 = meleeBullet.Bullet.OffenderJoinIndex - 1 >> 0, ((x$5 < 0 || x$5 >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + x$5]));
|
||||||
xfac$2 = 1;
|
xfac$1 = 1;
|
||||||
if (0 > offender.DirX) {
|
if (0 > offender.DirX) {
|
||||||
xfac$2 = -xfac$2;
|
xfac$1 = -xfac$1;
|
||||||
}
|
}
|
||||||
_tuple$4 = VirtualGridToWorldPos(offender.VirtualGridX + ($imul(xfac$2, meleeBullet.Bullet.HitboxOffsetX)) >> 0, offender.VirtualGridY);
|
_tuple$4 = VirtualGridToWorldPos(offender.VirtualGridX + ($imul(xfac$1, meleeBullet.Bullet.HitboxOffsetX)) >> 0, offender.VirtualGridY);
|
||||||
bulletWx = _tuple$4[0];
|
bulletWx = _tuple$4[0];
|
||||||
bulletWy = _tuple$4[1];
|
bulletWy = _tuple$4[1];
|
||||||
_tuple$5 = VirtualGridToWorldPos(meleeBullet.Bullet.HitboxSizeX, meleeBullet.Bullet.HitboxSizeY);
|
_tuple$5 = VirtualGridToWorldPos(meleeBullet.Bullet.HitboxSizeX, meleeBullet.Bullet.HitboxSizeY);
|
||||||
@ -5773,12 +5777,12 @@ $packages["jsexport/battle"] = (function() {
|
|||||||
/* while (true) { */ case 27:
|
/* while (true) { */ case 27:
|
||||||
/* if (!(_i$6 < _ref$7.$length)) { break; } */ if(!(_i$6 < _ref$7.$length)) { $s = 28; continue; }
|
/* if (!(_i$6 < _ref$7.$length)) { break; } */ if(!(_i$6 < _ref$7.$length)) { $s = 28; continue; }
|
||||||
obj = ((_i$6 < 0 || _i$6 >= _ref$7.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$7.$array[_ref$7.$offset + _i$6]);
|
obj = ((_i$6 < 0 || _i$6 >= _ref$7.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$7.$array[_ref$7.$offset + _i$6]);
|
||||||
|
_tmp$12 = false;
|
||||||
|
_tmp$13 = false;
|
||||||
_tmp$14 = false;
|
_tmp$14 = false;
|
||||||
_tmp$15 = false;
|
isBarrier = _tmp$12;
|
||||||
_tmp$16 = false;
|
isAnotherPlayer = _tmp$13;
|
||||||
isBarrier = _tmp$14;
|
isBullet = _tmp$14;
|
||||||
isAnotherPlayer = _tmp$15;
|
|
||||||
isBullet = _tmp$16;
|
|
||||||
_ref$8 = obj.Data;
|
_ref$8 = obj.Data;
|
||||||
if ($assertType(_ref$8, ptrType$5, true)[1]) {
|
if ($assertType(_ref$8, ptrType$5, true)[1]) {
|
||||||
isAnotherPlayer = true;
|
isAnotherPlayer = true;
|
||||||
@ -5804,10 +5808,10 @@ $packages["jsexport/battle"] = (function() {
|
|||||||
}
|
}
|
||||||
normAlignmentWithGravity = overlapResult.OverlapX * 0 + overlapResult.OverlapY * -1;
|
normAlignmentWithGravity = overlapResult.OverlapX * 0 + overlapResult.OverlapY * -1;
|
||||||
if (isAnotherPlayer) {
|
if (isAnotherPlayer) {
|
||||||
_tmp$17 = (overlapResult.Overlap - 0.2) * overlapResult.OverlapX;
|
_tmp$15 = (overlapResult.Overlap - 0.2) * overlapResult.OverlapX;
|
||||||
_tmp$18 = (overlapResult.Overlap - 0.2) * overlapResult.OverlapY;
|
_tmp$16 = (overlapResult.Overlap - 0.2) * overlapResult.OverlapY;
|
||||||
pushbackX = _tmp$17;
|
pushbackX = _tmp$15;
|
||||||
pushbackY = _tmp$18;
|
pushbackY = _tmp$16;
|
||||||
}
|
}
|
||||||
_ref$9 = (x$8 = joinIndex$2 - 1 >> 0, ((x$8 < 0 || x$8 >= hardPushbackNorms.$length) ? ($throwRuntimeError("index out of range"), undefined) : hardPushbackNorms.$array[hardPushbackNorms.$offset + x$8])).$get();
|
_ref$9 = (x$8 = joinIndex$2 - 1 >> 0, ((x$8 < 0 || x$8 >= hardPushbackNorms.$length) ? ($throwRuntimeError("index out of range"), undefined) : hardPushbackNorms.$array[hardPushbackNorms.$offset + x$8])).$get();
|
||||||
_i$7 = 0;
|
_i$7 = 0;
|
||||||
@ -5844,10 +5848,10 @@ $packages["jsexport/battle"] = (function() {
|
|||||||
thatPlayerInNextFrame$2.CharacterState = 9;
|
thatPlayerInNextFrame$2.CharacterState = 9;
|
||||||
thatPlayerInNextFrame$2.FramesToRecover = chConfig$2.LayDownFramesToRecover;
|
thatPlayerInNextFrame$2.FramesToRecover = chConfig$2.LayDownFramesToRecover;
|
||||||
} else {
|
} else {
|
||||||
_tmp$19 = 0;
|
_tmp$17 = 0;
|
||||||
_tmp$20 = currPlayerDownsync$3.ColliderRadius;
|
_tmp$18 = currPlayerDownsync$3.ColliderRadius;
|
||||||
halfColliderWidthDiff = _tmp$19;
|
halfColliderWidthDiff = _tmp$17;
|
||||||
halfColliderHeightDiff = _tmp$20;
|
halfColliderHeightDiff = _tmp$18;
|
||||||
_tuple$10 = VirtualGridToWorldPos(halfColliderWidthDiff, halfColliderHeightDiff);
|
_tuple$10 = VirtualGridToWorldPos(halfColliderWidthDiff, halfColliderHeightDiff);
|
||||||
halfColliderWorldHeightDiff = _tuple$10[1];
|
halfColliderWorldHeightDiff = _tuple$10[1];
|
||||||
_index$2 = joinIndex$2 - 1 >> 0;
|
_index$2 = joinIndex$2 - 1 >> 0;
|
||||||
@ -5928,14 +5932,14 @@ $packages["jsexport/battle"] = (function() {
|
|||||||
_i$9++;
|
_i$9++;
|
||||||
/* continue; */ $s = 37; continue;
|
/* continue; */ $s = 37; continue;
|
||||||
}
|
}
|
||||||
xfac$3 = 1;
|
xfac$2 = 1;
|
||||||
if (0 > offender$1.DirX) {
|
if (0 > offender$1.DirX) {
|
||||||
xfac$3 = -xfac$3;
|
xfac$2 = -xfac$2;
|
||||||
}
|
}
|
||||||
_tmp$21 = $imul(xfac$3, v$2.Bullet.PushbackVelX);
|
_tmp$19 = $imul(xfac$2, v$2.Bullet.PushbackVelX);
|
||||||
_tmp$22 = v$2.Bullet.PushbackVelY;
|
_tmp$20 = v$2.Bullet.PushbackVelY;
|
||||||
pushbackVelX = _tmp$21;
|
pushbackVelX = _tmp$19;
|
||||||
pushbackVelY = _tmp$22;
|
pushbackVelY = _tmp$20;
|
||||||
atkedPlayerInNextFrame = (x$11 = t.JoinIndex - 1 >> 0, ((x$11 < 0 || x$11 >= nextRenderFramePlayers.$length) ? ($throwRuntimeError("index out of range"), undefined) : nextRenderFramePlayers.$array[nextRenderFramePlayers.$offset + x$11]));
|
atkedPlayerInNextFrame = (x$11 = t.JoinIndex - 1 >> 0, ((x$11 < 0 || x$11 >= nextRenderFramePlayers.$length) ? ($throwRuntimeError("index out of range"), undefined) : nextRenderFramePlayers.$array[nextRenderFramePlayers.$offset + x$11]));
|
||||||
atkedPlayerInNextFrame.VelX = pushbackVelX;
|
atkedPlayerInNextFrame.VelX = pushbackVelX;
|
||||||
atkedPlayerInNextFrame.VelY = pushbackVelY;
|
atkedPlayerInNextFrame.VelY = pushbackVelY;
|
||||||
@ -5994,14 +5998,14 @@ $packages["jsexport/battle"] = (function() {
|
|||||||
_i$10++;
|
_i$10++;
|
||||||
/* continue; */ $s = 43; continue;
|
/* continue; */ $s = 43; continue;
|
||||||
}
|
}
|
||||||
xfac$4 = 1;
|
xfac$3 = 1;
|
||||||
if (0 > offender$2.DirX) {
|
if (0 > offender$2.DirX) {
|
||||||
xfac$4 = -xfac$4;
|
xfac$3 = -xfac$3;
|
||||||
}
|
}
|
||||||
_tmp$23 = $imul(xfac$4, v$3.Bullet.PushbackVelX);
|
_tmp$21 = $imul(xfac$3, v$3.Bullet.PushbackVelX);
|
||||||
_tmp$24 = v$3.Bullet.PushbackVelY;
|
_tmp$22 = v$3.Bullet.PushbackVelY;
|
||||||
pushbackVelX$1 = _tmp$23;
|
pushbackVelX$1 = _tmp$21;
|
||||||
pushbackVelY$1 = _tmp$24;
|
pushbackVelY$1 = _tmp$22;
|
||||||
atkedPlayerInNextFrame$1 = (x$15 = t$2.JoinIndex - 1 >> 0, ((x$15 < 0 || x$15 >= nextRenderFramePlayers.$length) ? ($throwRuntimeError("index out of range"), undefined) : nextRenderFramePlayers.$array[nextRenderFramePlayers.$offset + x$15]));
|
atkedPlayerInNextFrame$1 = (x$15 = t$2.JoinIndex - 1 >> 0, ((x$15 < 0 || x$15 >= nextRenderFramePlayers.$length) ? ($throwRuntimeError("index out of range"), undefined) : nextRenderFramePlayers.$array[nextRenderFramePlayers.$offset + x$15]));
|
||||||
atkedPlayerInNextFrame$1.VelX = pushbackVelX$1;
|
atkedPlayerInNextFrame$1.VelX = pushbackVelX$1;
|
||||||
atkedPlayerInNextFrame$1.VelY = pushbackVelY$1;
|
atkedPlayerInNextFrame$1.VelY = pushbackVelY$1;
|
||||||
@ -6031,10 +6035,10 @@ $packages["jsexport/battle"] = (function() {
|
|||||||
nextRenderFrameMeleeBullets = $append(nextRenderFrameMeleeBullets, v$4);
|
nextRenderFrameMeleeBullets = $append(nextRenderFrameMeleeBullets, v$4);
|
||||||
} else if ($assertType(_ref$16, ptrType$6, true)[1]) {
|
} else if ($assertType(_ref$16, ptrType$6, true)[1]) {
|
||||||
v$5 = _ref$16.$val;
|
v$5 = _ref$16.$val;
|
||||||
_tmp$25 = v$5.VirtualGridX + v$5.VelX >> 0;
|
_tmp$23 = v$5.VirtualGridX + v$5.VelX >> 0;
|
||||||
_tmp$26 = v$5.VirtualGridY + v$5.VelY >> 0;
|
_tmp$24 = v$5.VirtualGridY + v$5.VelY >> 0;
|
||||||
v$5.VirtualGridX = _tmp$25;
|
v$5.VirtualGridX = _tmp$23;
|
||||||
v$5.VirtualGridY = _tmp$26;
|
v$5.VirtualGridY = _tmp$24;
|
||||||
nextRenderFrameFireballBullets = $append(nextRenderFrameFireballBullets, v$5);
|
nextRenderFrameFireballBullets = $append(nextRenderFrameFireballBullets, v$5);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -6088,7 +6092,7 @@ $packages["jsexport/battle"] = (function() {
|
|||||||
_i$12++;
|
_i$12++;
|
||||||
}
|
}
|
||||||
$s = -1; return new RoomDownsyncFrame.ptr(currRenderFrame.Id + 1 >> 0, nextRenderFramePlayers, new $Int64(0, 0), nextRenderFrameMeleeBullets, nextRenderFrameFireballBullets, new $Uint64(0, 0), false, bulletLocalId);
|
$s = -1; return new RoomDownsyncFrame.ptr(currRenderFrame.Id + 1 >> 0, nextRenderFramePlayers, new $Int64(0, 0), nextRenderFrameMeleeBullets, nextRenderFrameFireballBullets, new $Uint64(0, 0), false, bulletLocalId);
|
||||||
/* */ } return; } var $f = {$blk: ApplyInputFrameDownsyncDynamicsOnSingleRenderFrame, $c: true, $r, _1, _2, _entry, _entry$1, _entry$2, _entry$3, _entry$4, _entry$5, _i, _i$1, _i$10, _i$11, _i$12, _i$2, _i$3, _i$4, _i$5, _i$6, _i$7, _i$8, _i$9, _index, _index$1, _index$2, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _ref, _ref$1, _ref$10, _ref$11, _ref$12, _ref$13, _ref$14, _ref$15, _ref$16, _ref$17, _ref$18, _ref$2, _ref$3, _ref$4, _ref$5, _ref$6, _ref$7, _ref$8, _ref$9, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$18, _tmp$19, _tmp$2, _tmp$20, _tmp$21, _tmp$22, _tmp$23, _tmp$24, _tmp$25, _tmp$26, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, _tuple$10, _tuple$11, _tuple$12, _tuple$13, _tuple$14, _tuple$15, _tuple$16, _tuple$17, _tuple$2, _tuple$3, _tuple$4, _tuple$5, _tuple$6, _tuple$7, _tuple$8, _tuple$9, addToNextRenderFrame, atkedPlayerInNextFrame, atkedPlayerInNextFrame$1, bShape, bulletCollider, bulletColliders, bulletLocalId, bulletShape, bulletShape$1, bulletWx, bulletWx$1, bulletWy, bulletWy$1, chConfig, chConfig$1, chConfig$2, chConfigsOrderedByJoinIndex, colliderHeight, colliderWidth, colliderWorldHeight, colliderWorldWidth, collision, collision$1, collisionSpaceOffsetX, collisionSpaceOffsetY, collisionSys, collisionSysMap, currPlayerDownsync, currPlayerDownsync$1, currPlayerDownsync$2, currPlayerDownsync$3, currPlayerDownsync$4, currRenderFrame, defenderShape, defenderShape$1, effDx, effDy, effPushbacks, existent, existent$1, existent$2, existent$3, existent$4, existent$5, fireballBullet, halfColliderHeightDiff, halfColliderWidthDiff, halfColliderWorldHeightDiff, hardPushbackNorm, hardPushbackNorms, hasLockVel, hitboxSizeWx, hitboxSizeWx$1, hitboxSizeWy, hitboxSizeWy$1, i, i$1, i$2, i$3, i$4, inputsBuffer, isAnotherPlayer, isBarrier, isBullet, joinIndex, joinIndex$1, joinIndex$2, joinIndex$3, jumpedOrNot, jumpedOrNotList, landedOnGravityPushback, meleeBullet, newBullet, newBullet$1, newBulletCollider, newBulletCollider$1, newVx, newVy, nextRenderFrameFireballBullets, nextRenderFrameMeleeBullets, nextRenderFramePlayers, normAlignmentWithGravity, obj, obj$1, obj$2, offender, offender$1, offender$2, oldFramesToRecover, oldFramesToRecover$1, oldNextCharacterState, overlapResult, overlapped, overlapped$1, overlapped$2, patternId, playerCollider, playerCollider$1, playerCollider$2, playerCollider$3, playerColliders, playerShape, projectedMagnitude, pushbackVelX, pushbackVelX$1, pushbackVelY, pushbackVelY$1, pushbackX, pushbackY, roomCapacity, skillConfig, skillId, t, t$1, t$2, t$3, thatPlayerInNextFrame, thatPlayerInNextFrame$1, thatPlayerInNextFrame$2, thatPlayerInNextFrame$3, v, v$1, v$2, v$3, v$4, v$5, wx, wy, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, xfac, xfac$1, xfac$2, xfac$3, xfac$4, $s};return $f;
|
/* */ } return; } var $f = {$blk: ApplyInputFrameDownsyncDynamicsOnSingleRenderFrame, $c: true, $r, _1, _2, _entry, _entry$1, _entry$2, _entry$3, _entry$4, _entry$5, _i, _i$1, _i$10, _i$11, _i$12, _i$2, _i$3, _i$4, _i$5, _i$6, _i$7, _i$8, _i$9, _index, _index$1, _index$2, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _ref, _ref$1, _ref$10, _ref$11, _ref$12, _ref$13, _ref$14, _ref$15, _ref$16, _ref$17, _ref$18, _ref$2, _ref$3, _ref$4, _ref$5, _ref$6, _ref$7, _ref$8, _ref$9, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$18, _tmp$19, _tmp$2, _tmp$20, _tmp$21, _tmp$22, _tmp$23, _tmp$24, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, _tuple$10, _tuple$11, _tuple$12, _tuple$13, _tuple$14, _tuple$15, _tuple$16, _tuple$17, _tuple$2, _tuple$3, _tuple$4, _tuple$5, _tuple$6, _tuple$7, _tuple$8, _tuple$9, addToNextRenderFrame, atkedPlayerInNextFrame, atkedPlayerInNextFrame$1, bShape, bulletCollider, bulletColliders, bulletLocalId, bulletShape, bulletShape$1, bulletWx, bulletWx$1, bulletWy, bulletWy$1, chConfig, chConfig$1, chConfig$2, chConfigsOrderedByJoinIndex, colliderHeight, colliderWidth, colliderWorldHeight, colliderWorldWidth, collision, collision$1, collisionSpaceOffsetX, collisionSpaceOffsetY, collisionSys, collisionSysMap, currPlayerDownsync, currPlayerDownsync$1, currPlayerDownsync$2, currPlayerDownsync$3, currPlayerDownsync$4, currRenderFrame, defenderShape, defenderShape$1, effDx, effDy, effPushbacks, existent, existent$1, existent$2, existent$3, existent$4, existent$5, fireballBullet, halfColliderHeightDiff, halfColliderWidthDiff, halfColliderWorldHeightDiff, hardPushbackNorm, hardPushbackNorms, hasLockVel, hitboxSizeWx, hitboxSizeWx$1, hitboxSizeWy, hitboxSizeWy$1, i, i$1, i$2, i$3, i$4, inputsBuffer, isAnotherPlayer, isBarrier, isBullet, joinIndex, joinIndex$1, joinIndex$2, joinIndex$3, jumpedOrNot, jumpedOrNotList, landedOnGravityPushback, meleeBullet, newBullet, newBullet$1, newBulletCollider, newBulletCollider$1, newVx, newVy, nextRenderFrameFireballBullets, nextRenderFrameMeleeBullets, nextRenderFramePlayers, normAlignmentWithGravity, obj, obj$1, obj$2, offender, offender$1, offender$2, oldFramesToRecover, oldFramesToRecover$1, oldNextCharacterState, overlapResult, overlapped, overlapped$1, overlapped$2, patternId, playerCollider, playerCollider$1, playerCollider$2, playerCollider$3, playerColliders, playerShape, projectedMagnitude, pushbackVelX, pushbackVelX$1, pushbackVelY, pushbackVelY$1, pushbackX, pushbackY, roomCapacity, skillConfig, skillId, t, t$1, t$2, t$3, thatPlayerInNextFrame, thatPlayerInNextFrame$1, thatPlayerInNextFrame$2, thatPlayerInNextFrame$3, v, v$1, v$2, v$3, v$4, v$5, wx, wy, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, xfac, xfac$1, xfac$2, xfac$3, $s};return $f;
|
||||||
};
|
};
|
||||||
$pkg.ApplyInputFrameDownsyncDynamicsOnSingleRenderFrame = ApplyInputFrameDownsyncDynamicsOnSingleRenderFrame;
|
$pkg.ApplyInputFrameDownsyncDynamicsOnSingleRenderFrame = ApplyInputFrameDownsyncDynamicsOnSingleRenderFrame;
|
||||||
GenerateRectCollider = function(wx, wy, w, h, topPadding, bottomPadding, leftPadding, rightPadding, spaceOffsetX, spaceOffsetY, data, tag) {
|
GenerateRectCollider = function(wx, wy, w, h, topPadding, bottomPadding, leftPadding, rightPadding, spaceOffsetX, spaceOffsetY, data, tag) {
|
||||||
@ -6214,7 +6218,7 @@ $packages["jsexport/battle"] = (function() {
|
|||||||
$r = math.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
|
$r = math.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
|
||||||
$r = resolv.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
|
$r = resolv.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
|
||||||
$pkg.DIRECTION_DECODER = new sliceType$1([new sliceType([0, 0]), new sliceType([0, 2]), new sliceType([0, -2]), new sliceType([2, 0]), new sliceType([-2, 0]), new sliceType([1, 1]), new sliceType([-1, -1]), new sliceType([1, -1]), new sliceType([-1, 1])]);
|
$pkg.DIRECTION_DECODER = new sliceType$1([new sliceType([0, 0]), new sliceType([0, 2]), new sliceType([0, -2]), new sliceType([2, 0]), new sliceType([-2, 0]), new sliceType([1, 1]), new sliceType([-1, -1]), new sliceType([1, -1]), new sliceType([-1, 1])]);
|
||||||
skills = $makeMap($Int.keyFor, [{ k: 1, v: new Skill.ptr(0, 30, 30, 30, 1, 2, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 7, 13, 30, 22, 13, 9, 50, 0, 5, 5, -1, 1200, 0, 2400, 3200, false, $makeMap($Int.keyFor, [{ k: 1, v: 2 }]), 0))])) }, { k: 2, v: new Skill.ptr(0, 36, 36, 36, 1, 11, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 18, 22, 36, 18, 18, 9, 50, 0, 5, 10, -1, 1800, 0, 2400, 3200, false, $makeMap($Int.keyFor, [{ k: 1, v: 3 }]), 0))])) }, { k: 3, v: new Skill.ptr(0, 50, 50, 50, 1, 12, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 15, 0, 0, 30, 999999999, 9, 200, 700, 10, 50, 500, 3200, 0, 4800, 3200, true, false, 0))])) }, { k: 4, v: new Skill.ptr(0, 30, 30, 30, 1, 2, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 7, 13, 30, 22, 13, 9, 50, 0, 5, 5, -1, 1200, 0, 2400, 3200, false, $makeMap($Int.keyFor, [{ k: 1, v: 5 }]), 0))])) }, { k: 5, v: new Skill.ptr(0, 36, 36, 36, 1, 11, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 18, 22, 36, 18, 18, 9, 50, 0, 5, 10, -1, 1800, 0, 2400, 3200, false, $makeMap($Int.keyFor, [{ k: 1, v: 6 }]), 0))])) }, { k: 6, v: new Skill.ptr(0, 45, 45, 45, 1, 12, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 15, 0, 0, 28, 999999999, 9, 200, 700, 10, -10, -1, 2400, 0, 3200, 3200, true, false, 0))])) }, { k: 7, v: new Skill.ptr(0, 30, 30, 30, 1, 2, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 7, 13, 30, 22, 13, 9, 50, 0, 5, 5, -1, 1200, 0, 2400, 3200, false, $makeMap($Int.keyFor, [{ k: 1, v: 2 }]), 0))])) }, { k: 8, v: new Skill.ptr(0, 36, 36, 36, 1, 11, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 18, 22, 36, 18, 18, 9, 50, 0, 5, 10, -1, 1800, 0, 2400, 3200, false, $makeMap($Int.keyFor, [{ k: 1, v: 3 }]), 0))])) }, { k: 9, v: new Skill.ptr(0, 50, 50, 50, 1, 12, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 15, 0, 0, 30, 999999999, 9, 200, 700, 10, 50, 500, 3200, 0, 4800, 3200, false, false, 0))])) }, { k: 10, v: new Skill.ptr(0, 40, 40, 40, 1, 13, new sliceType$2([new FireballBullet.ptr(0, 0, 0, 0, 0, 0, 800, 1, new Bullet.ptr(0, 0, 0, 15, 0, 0, 999999999, 15, 9, 200, 0, 20, -1, -1, 3200, 0, 4800, 3200, false, false, 0))])) }, { k: 255, v: new Skill.ptr(0, 30, 30, 30, 1, 6, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 3, 0, 0, 20, 18, 9, 50, 0, 5, -1, -1, 1200, 0, 3200, 2400, false, false, 0))])) }, { k: 256, v: new Skill.ptr(0, 20, 20, 20, 1, 6, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 3, 0, 0, 10, 15, 9, 50, 0, 5, -1, -1, 1200, 0, 3200, 2400, false, false, 0))])) }, { k: 257, v: new Skill.ptr(0, 30, 30, 30, 1, 6, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 3, 0, 0, 20, 18, 9, 50, 0, 5, -1, -1, 1200, 0, 3200, 2400, false, false, 0))])) }]);
|
skills = $makeMap($Int.keyFor, [{ k: 1, v: new Skill.ptr(0, 30, 30, 30, 1, 2, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 7, 13, 30, 22, 13, 9, 50, 0, 5, 5, -1, 1200, 0, 2400, 3200, false, $makeMap($Int.keyFor, [{ k: 1, v: 2 }]), 0))])) }, { k: 2, v: new Skill.ptr(0, 36, 36, 36, 1, 11, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 18, 22, 36, 18, 18, 9, 50, 0, 5, 10, -1, 1800, 0, 2400, 3200, false, $makeMap($Int.keyFor, [{ k: 1, v: 3 }]), 0))])) }, { k: 3, v: new Skill.ptr(0, 50, 50, 50, 1, 12, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 8, 0, 0, 30, 999999999, 9, 200, 700, 10, 50, 500, 1600, 800, 3200, 3200, true, false, 0))])) }, { k: 4, v: new Skill.ptr(0, 30, 30, 30, 1, 2, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 7, 13, 30, 22, 13, 9, 50, 0, 5, 5, -1, 1200, 0, 2400, 3200, false, $makeMap($Int.keyFor, [{ k: 1, v: 5 }]), 0))])) }, { k: 5, v: new Skill.ptr(0, 36, 36, 36, 1, 11, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 18, 22, 36, 18, 18, 9, 50, 0, 5, 10, -1, 1800, 0, 2400, 3200, false, $makeMap($Int.keyFor, [{ k: 1, v: 6 }]), 0))])) }, { k: 6, v: new Skill.ptr(0, 45, 45, 45, 1, 12, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 8, 0, 0, 28, 999999999, 9, 200, -1, 10, -10, -1, 2400, 0, 3200, 3200, true, false, 0))])) }, { k: 7, v: new Skill.ptr(0, 30, 30, 30, 1, 2, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 7, 13, 30, 22, 13, 9, 50, 0, 5, -1, -1, 1200, 0, 2400, 3200, false, $makeMap($Int.keyFor, [{ k: 1, v: 8 }]), 0))])) }, { k: 8, v: new Skill.ptr(0, 36, 36, 36, 1, 11, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 18, 22, 36, 18, 18, 9, 50, 0, 5, 10, -1, 1800, 0, 2400, 3200, false, $makeMap($Int.keyFor, [{ k: 1, v: 9 }]), 0))])) }, { k: 9, v: new Skill.ptr(0, 40, 40, 40, 1, 12, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 7, 0, 0, 30, 999999999, 9, 200, 400, 10, 100, -1, 1000, 0, 3200, 3200, true, false, 0))])) }, { k: 10, v: new Skill.ptr(0, 40, 40, 40, 1, 13, new sliceType$2([new FireballBullet.ptr(0, 0, 0, 0, 0, 0, 800, 1, new Bullet.ptr(0, 0, 0, 15, 0, 0, 999999999, 15, 9, 200, 0, 20, -1, -1, 3200, 500, 4800, 3200, false, false, 0))])) }, { k: 11, v: new Skill.ptr(0, 60, 60, 60, 1, 14, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 3, 0, 0, 25, 999999999, 9, 200, 700, 30, 100, 800, 800, 0, 4000, 6400, true, false, 0))])) }, { k: 255, v: new Skill.ptr(0, 30, 30, 30, 1, 6, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 3, 0, 0, 20, 18, 9, 50, 0, 5, -1, -1, 1200, 0, 3200, 2400, false, false, 0))])) }, { k: 256, v: new Skill.ptr(0, 20, 20, 20, 1, 6, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 3, 0, 0, 10, 15, 9, 50, 0, 5, -1, -1, 1200, 0, 3200, 2400, false, false, 0))])) }, { k: 257, v: new Skill.ptr(0, 30, 30, 30, 1, 6, new sliceType$2([new MeleeBullet.ptr(new Bullet.ptr(0, 0, 0, 3, 0, 0, 20, 18, 9, 50, 0, 5, -1, -1, 1200, 0, 3200, 2400, false, false, 0))])) }]);
|
||||||
$pkg.Characters = $makeMap($Int.keyFor, [{ k: 0, v: new CharacterConfig.ptr(0, "MonkGirl", 11, 1, 16, 16, 10, 27, 120, 800, (function(patternId, currPlayerDownsync) {
|
$pkg.Characters = $makeMap($Int.keyFor, [{ k: 0, v: new CharacterConfig.ptr(0, "MonkGirl", 11, 1, 16, 16, 10, 27, 120, 800, (function(patternId, currPlayerDownsync) {
|
||||||
var _entry, _entry$1, _ref, _tuple, _tuple$1, currPlayerDownsync, existent1, existent2, nextSkillId, patternId, skillConfig, v, x, x$1;
|
var _entry, _entry$1, _ref, _tuple, _tuple$1, currPlayerDownsync, existent1, existent2, nextSkillId, patternId, skillConfig, v, x, x$1;
|
||||||
if (1 === patternId) {
|
if (1 === patternId) {
|
||||||
@ -6282,7 +6286,7 @@ $packages["jsexport/battle"] = (function() {
|
|||||||
if (currPlayerDownsync.InAir) {
|
if (currPlayerDownsync.InAir) {
|
||||||
return 257;
|
return 257;
|
||||||
} else {
|
} else {
|
||||||
return 10;
|
return 7;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
_tuple = (_entry = skills[$Int.keyFor(((currPlayerDownsync.ActiveSkillId >> 0)))], _entry !== undefined ? [_entry.v, true] : [ptrType.nil, false]);
|
_tuple = (_entry = skills[$Int.keyFor(((currPlayerDownsync.ActiveSkillId >> 0)))], _entry !== undefined ? [_entry.v, true] : [ptrType.nil, false]);
|
||||||
@ -6303,6 +6307,14 @@ $packages["jsexport/battle"] = (function() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else if (2 === patternId) {
|
||||||
|
if (!currPlayerDownsync.InAir) {
|
||||||
|
return 11;
|
||||||
|
}
|
||||||
|
} else if (3 === patternId) {
|
||||||
|
if (!currPlayerDownsync.InAir) {
|
||||||
|
return 10;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return -1;
|
return -1;
|
||||||
})) }]);
|
})) }]);
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"_name": "Atk3",
|
"_name": "Atk3",
|
||||||
"_objFlags": 0,
|
"_objFlags": 0,
|
||||||
"_native": "",
|
"_native": "",
|
||||||
"_duration": 0.6333333333333333,
|
"_duration": 0.5333333333333333,
|
||||||
"sample": 60,
|
"sample": 60,
|
||||||
"speed": 1,
|
"speed": 1,
|
||||||
"wrapMode": 1,
|
"wrapMode": 1,
|
||||||
@ -13,84 +13,72 @@
|
|||||||
"spriteFrame": [
|
"spriteFrame": [
|
||||||
{
|
{
|
||||||
"frame": 0,
|
"frame": 0,
|
||||||
"value": {
|
|
||||||
"__uuid__": "318745eb-06b1-4e7f-88d1-e23e02d99e67"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"frame": 0.06666666666666667,
|
|
||||||
"value": {
|
|
||||||
"__uuid__": "a64b6f59-fa72-4f5d-89dc-81a469244ea5"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"frame": 0.11666666666666667,
|
|
||||||
"value": {
|
|
||||||
"__uuid__": "f800d4a1-2396-4aa5-a578-11481db1d8bf"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"frame": 0.16666666666666666,
|
|
||||||
"value": {
|
"value": {
|
||||||
"__uuid__": "d97f6a5f-8e63-40d7-bd14-9dc71e15e5db"
|
"__uuid__": "d97f6a5f-8e63-40d7-bd14-9dc71e15e5db"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"frame": 0.23333333333333334,
|
"frame": 0.03333333333333333,
|
||||||
"value": {
|
"value": {
|
||||||
"__uuid__": "196bcbf9-e89f-4b26-b736-73e2fa787e50"
|
"__uuid__": "196bcbf9-e89f-4b26-b736-73e2fa787e50"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"frame": 0.3,
|
"frame": 0.08333333333333333,
|
||||||
"value": {
|
"value": {
|
||||||
"__uuid__": "3229e023-e63d-4a4e-af72-2b1409ea43c5"
|
"__uuid__": "3229e023-e63d-4a4e-af72-2b1409ea43c5"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"frame": 0.36666666666666664,
|
"frame": 0.11666666666666667,
|
||||||
"value": {
|
"value": {
|
||||||
"__uuid__": "e2d6e8b8-b468-4edb-b8c3-860bd85ebeae"
|
"__uuid__": "e2d6e8b8-b468-4edb-b8c3-860bd85ebeae"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"frame": 0.4166666666666667,
|
"frame": 0.16666666666666666,
|
||||||
|
"value": {
|
||||||
|
"__uuid__": "318745eb-06b1-4e7f-88d1-e23e02d99e67"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"frame": 0.21666666666666667,
|
||||||
"value": {
|
"value": {
|
||||||
"__uuid__": "bba6f088-0e1f-4a12-9872-41670be1152a"
|
"__uuid__": "bba6f088-0e1f-4a12-9872-41670be1152a"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"frame": 0.45,
|
"frame": 0.26666666666666666,
|
||||||
"value": {
|
"value": {
|
||||||
"__uuid__": "2c5de5b2-9009-48fa-bef4-ae34cc94f876"
|
"__uuid__": "2c5de5b2-9009-48fa-bef4-ae34cc94f876"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"frame": 0.48333333333333334,
|
"frame": 0.31666666666666665,
|
||||||
"value": {
|
"value": {
|
||||||
"__uuid__": "6f27b252-6eaf-4b4b-9c5a-46ba899e4845"
|
"__uuid__": "6f27b252-6eaf-4b4b-9c5a-46ba899e4845"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"frame": 0.5166666666666667,
|
"frame": 0.36666666666666664,
|
||||||
"value": {
|
"value": {
|
||||||
"__uuid__": "4ebd5c60-efa6-4950-a4c8-74a7a8517333"
|
"__uuid__": "4ebd5c60-efa6-4950-a4c8-74a7a8517333"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"frame": 0.55,
|
"frame": 0.4166666666666667,
|
||||||
"value": {
|
"value": {
|
||||||
"__uuid__": "a207290f-4556-4adb-8a11-e1d5ba342550"
|
"__uuid__": "a207290f-4556-4adb-8a11-e1d5ba342550"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"frame": 0.5833333333333334,
|
"frame": 0.4666666666666667,
|
||||||
"value": {
|
"value": {
|
||||||
"__uuid__": "e9d442d2-981d-437d-87c0-085162017de7"
|
"__uuid__": "e9d442d2-981d-437d-87c0-085162017de7"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"frame": 0.6166666666666667,
|
"frame": 0.5166666666666667,
|
||||||
"value": {
|
"value": {
|
||||||
"__uuid__": "9b4d5c8c-5ec0-4fd7-a45e-6b0bc8ff9119"
|
"__uuid__": "9b4d5c8c-5ec0-4fd7-a45e-6b0bc8ff9119"
|
||||||
}
|
}
|
||||||
|
85
frontend/assets/resources/animation/Monk/Atk5.anim
Normal file
85
frontend/assets/resources/animation/Monk/Atk5.anim
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
{
|
||||||
|
"__type__": "cc.AnimationClip",
|
||||||
|
"_name": "Atk5",
|
||||||
|
"_objFlags": 0,
|
||||||
|
"_native": "",
|
||||||
|
"_duration": 1.0166666666666666,
|
||||||
|
"sample": 60,
|
||||||
|
"speed": 1,
|
||||||
|
"wrapMode": 1,
|
||||||
|
"curveData": {
|
||||||
|
"comps": {
|
||||||
|
"cc.Sprite": {
|
||||||
|
"spriteFrame": [
|
||||||
|
{
|
||||||
|
"frame": 0,
|
||||||
|
"value": {
|
||||||
|
"__uuid__": "6aa88bb9-0427-496f-ae7d-dc06410e904e"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"frame": 0.08333333333333333,
|
||||||
|
"value": {
|
||||||
|
"__uuid__": "cdc65f83-c526-48b6-8a96-758b098568fe"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"frame": 0.16666666666666666,
|
||||||
|
"value": {
|
||||||
|
"__uuid__": "927636af-2d1d-4801-a546-857f5eeb256d"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"frame": 0.26666666666666666,
|
||||||
|
"value": {
|
||||||
|
"__uuid__": "2aeeb833-9151-4160-9775-9e08a376fd63"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"frame": 0.36666666666666664,
|
||||||
|
"value": {
|
||||||
|
"__uuid__": "2bd1de9e-30e5-4bc5-b6c3-5c286754b0b7"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"frame": 0.4666666666666667,
|
||||||
|
"value": {
|
||||||
|
"__uuid__": "15a6ebb3-289a-46fb-ac94-f6efa0d90510"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"frame": 0.5833333333333334,
|
||||||
|
"value": {
|
||||||
|
"__uuid__": "6ca922c0-cb62-4b1b-8773-79685a58bbd6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"frame": 0.7,
|
||||||
|
"value": {
|
||||||
|
"__uuid__": "d60ceb6f-3a45-47dd-8d3f-bcfe8c919d85"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"frame": 0.8,
|
||||||
|
"value": {
|
||||||
|
"__uuid__": "c313f6a1-e0fa-4321-8336-c32f471b2592"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"frame": 0.9,
|
||||||
|
"value": {
|
||||||
|
"__uuid__": "bb886d03-7f3e-45c8-acfd-393091f09adb"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"frame": 1,
|
||||||
|
"value": {
|
||||||
|
"__uuid__": "1be255c3-f8c9-43ae-be68-2e500e7f1125"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"events": []
|
||||||
|
}
|
5
frontend/assets/resources/animation/Monk/Atk5.anim.meta
Normal file
5
frontend/assets/resources/animation/Monk/Atk5.anim.meta
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"ver": "2.1.0",
|
||||||
|
"uuid": "0abbd156-980e-475e-9994-3c958bd913fc",
|
||||||
|
"subMetas": {}
|
||||||
|
}
|
@ -811,6 +811,9 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"__uuid__": "7e0a1e98-ee5a-446f-bec2-7d72b6916503"
|
"__uuid__": "7e0a1e98-ee5a-446f-bec2-7d72b6916503"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"__uuid__": "0abbd156-980e-475e-9994-3c958bd913fc"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"playOnLoad": false,
|
"playOnLoad": false,
|
||||||
|
@ -464,7 +464,7 @@
|
|||||||
"array": [
|
"array": [
|
||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
210.49935741157617,
|
216.63421096211545,
|
||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
|
@ -15,6 +15,7 @@ window.ATK_CHARACTER_STATE = {
|
|||||||
Atk2: [11, "Atk2"],
|
Atk2: [11, "Atk2"],
|
||||||
Atk3: [12, "Atk3"],
|
Atk3: [12, "Atk3"],
|
||||||
Atk4: [13, "Atk4"],
|
Atk4: [13, "Atk4"],
|
||||||
|
Atk5: [14, "Atk5"],
|
||||||
};
|
};
|
||||||
|
|
||||||
window.ATK_CHARACTER_STATE_ARR = [];
|
window.ATK_CHARACTER_STATE_ARR = [];
|
||||||
|
@ -7,20 +7,33 @@ cc.Class({
|
|||||||
this.speciesName = null;
|
this.speciesName = null;
|
||||||
},
|
},
|
||||||
|
|
||||||
setSpecies(speciesName) {
|
setSpecies(speciesName, fireballBullet, rdf) {
|
||||||
if (speciesName == this.speciesName) return;
|
if (speciesName == this.speciesName) return;
|
||||||
this.speciesName = speciesName;
|
this.speciesName = speciesName;
|
||||||
this.effAnimNode = this.node.getChildByName(this.speciesName);
|
this.effAnimNode = this.node.getChildByName(this.speciesName);
|
||||||
this.animComp = this.effAnimNode.getComponent(cc.Animation);
|
this.animComp = this.effAnimNode.getComponent(cc.Animation);
|
||||||
this.effAnimNode.active = true;
|
this.effAnimNode.active = true;
|
||||||
for (let k in this.children) {
|
for (let k in this.children) {
|
||||||
const child = this.children[k];
|
const child = this.children[k];
|
||||||
if (!child.active) continue;
|
if (!child.active) continue;
|
||||||
if (child == effAnimNode || child.name == speciesName) continue;
|
if (child == effAnimNode || child.name == speciesName) continue;
|
||||||
child.active = false;
|
child.active = false;
|
||||||
}
|
}
|
||||||
|
this.updateAnim(speciesName, fireballBullet, rdf);
|
||||||
},
|
},
|
||||||
|
|
||||||
onLoad() {
|
onLoad() {},
|
||||||
|
|
||||||
|
updateAnim(speciesName, fireballBullet, rdf) {
|
||||||
|
// Update directions
|
||||||
|
if (this.animComp && this.animComp.node) {
|
||||||
|
if (0 > fireballBullet.DirX) {
|
||||||
|
this.effAnimNode.scaleX = (-1.0);
|
||||||
|
} else if (0 < fireballBullet.DirX) {
|
||||||
|
this.effAnimNode.scaleX = (1.0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.animComp.play(speciesName);
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
@ -1067,7 +1067,7 @@ othersForcedDownsyncRenderFrame=${JSON.stringify(othersForcedDownsyncRenderFrame
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
_renderFireballBullet(fireballBullet) {
|
_renderFireballBullet(fireballBullet, rdf) {
|
||||||
const self = this;
|
const self = this;
|
||||||
let pqNode = self.cachedFireballs.popAny(fireballBullet.Bullet.BulletLocalId);
|
let pqNode = self.cachedFireballs.popAny(fireballBullet.Bullet.BulletLocalId);
|
||||||
const speciesName = `Fireball${fireballBullet.SpeciesId}`;
|
const speciesName = `Fireball${fireballBullet.SpeciesId}`;
|
||||||
@ -1078,7 +1078,7 @@ othersForcedDownsyncRenderFrame=${JSON.stringify(othersForcedDownsyncRenderFrame
|
|||||||
console.log(`Using a cached fireball node for rendering for bulletLocalId=${fireballBullet.Bullet.BulletLocalId}`);
|
console.log(`Using a cached fireball node for rendering for bulletLocalId=${fireballBullet.Bullet.BulletLocalId}`);
|
||||||
}
|
}
|
||||||
const cachedFireball = pqNode.value;
|
const cachedFireball = pqNode.value;
|
||||||
cachedFireball.setSpecies(speciesName);
|
cachedFireball.setSpecies(speciesName, fireballBullet, rdf);
|
||||||
cachedFireball.lastUsed = self.renderFrameId;
|
cachedFireball.lastUsed = self.renderFrameId;
|
||||||
cachedFireball.bulletLocalId = fireballBullet.Bullet.BulletLocalId;
|
cachedFireball.bulletLocalId = fireballBullet.Bullet.BulletLocalId;
|
||||||
|
|
||||||
@ -1111,7 +1111,9 @@ othersForcedDownsyncRenderFrame=${JSON.stringify(othersForcedDownsyncRenderFrame
|
|||||||
const fireballBullets = rdf.FireballBullets;
|
const fireballBullets = rdf.FireballBullets;
|
||||||
for (let k in fireballBullets) {
|
for (let k in fireballBullets) {
|
||||||
const fireballBullet = fireballBullets[k];
|
const fireballBullet = fireballBullets[k];
|
||||||
self._renderFireballBullet(fireballBullet);
|
if ((fireballBullet.Bullet.OriginatedRenderFrameId + fireballBullet.Bullet.StartupFrames <= rdf.Id) && (fireballBullet.Bullet.OriginatedRenderFrameId + fireballBullet.Bullet.StartupFrames + fireballBullet.Bullet.ActiveFrames > rdf.Id)) {
|
||||||
|
self._renderFireballBullet(fireballBullet, rdf);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Update countdown
|
// Update countdown
|
||||||
|
@ -65,6 +65,7 @@ const (
|
|||||||
ATK_CHARACTER_STATE_ATK2 = int32(11)
|
ATK_CHARACTER_STATE_ATK2 = int32(11)
|
||||||
ATK_CHARACTER_STATE_ATK3 = int32(12)
|
ATK_CHARACTER_STATE_ATK3 = int32(12)
|
||||||
ATK_CHARACTER_STATE_ATK4 = int32(13)
|
ATK_CHARACTER_STATE_ATK4 = int32(13)
|
||||||
|
ATK_CHARACTER_STATE_ATK5 = int32(14)
|
||||||
)
|
)
|
||||||
|
|
||||||
var inAirSet = map[int32]bool{
|
var inAirSet = map[int32]bool{
|
||||||
@ -425,7 +426,13 @@ func deriveOpPattern(currPlayerDownsync, thatPlayerInNextFrame *PlayerDownsync,
|
|||||||
|
|
||||||
patternId := PATTERN_ID_NO_OP
|
patternId := PATTERN_ID_NO_OP
|
||||||
if decodedInput.BtnALevel > prevBtnALevel {
|
if decodedInput.BtnALevel > prevBtnALevel {
|
||||||
patternId = 1
|
if 0 > effDy {
|
||||||
|
patternId = 3
|
||||||
|
} else if 0 < effDy {
|
||||||
|
patternId = 2
|
||||||
|
} else {
|
||||||
|
patternId = 1
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return patternId, jumpedOrNot, effDx, effDy
|
return patternId, jumpedOrNot, effDx, effDy
|
||||||
@ -521,13 +528,11 @@ func ApplyInputFrameDownsyncDynamicsOnSingleRenderFrame(inputsBuffer *RingBuffer
|
|||||||
var newBullet FireballBullet = *v // Copied primitive fields into an onstack variable
|
var newBullet FireballBullet = *v // Copied primitive fields into an onstack variable
|
||||||
newBullet.BulletLocalId = bulletLocalId
|
newBullet.BulletLocalId = bulletLocalId
|
||||||
bulletLocalId++
|
bulletLocalId++
|
||||||
xfac := int32(1)
|
newBullet.VirtualGridX, newBullet.VirtualGridY = currPlayerDownsync.VirtualGridX+xfac*newBullet.HitboxOffsetX, currPlayerDownsync.VirtualGridY+newBullet.HitboxOffsetY
|
||||||
if 0 > thatPlayerInNextFrame.DirX {
|
|
||||||
xfac = -xfac
|
|
||||||
}
|
|
||||||
newBullet.VirtualGridX, newBullet.VirtualGridY = currPlayerDownsync.VirtualGridX+xfac*newBullet.HitboxOffsetX, currPlayerDownsync.VirtualGridY
|
|
||||||
newBullet.OriginatedRenderFrameId = currRenderFrame.Id
|
newBullet.OriginatedRenderFrameId = currRenderFrame.Id
|
||||||
newBullet.OffenderJoinIndex = joinIndex
|
newBullet.OffenderJoinIndex = joinIndex
|
||||||
|
newBullet.DirX = xfac
|
||||||
|
newBullet.DirY = 0
|
||||||
newBullet.VelX = newBullet.Speed * xfac
|
newBullet.VelX = newBullet.Speed * xfac
|
||||||
newBullet.VelY = 0
|
newBullet.VelY = 0
|
||||||
nextRenderFrameFireballBullets = append(nextRenderFrameFireballBullets, &newBullet)
|
nextRenderFrameFireballBullets = append(nextRenderFrameFireballBullets, &newBullet)
|
||||||
@ -550,7 +555,10 @@ func ApplyInputFrameDownsyncDynamicsOnSingleRenderFrame(inputsBuffer *RingBuffer
|
|||||||
|
|
||||||
if 0 == currPlayerDownsync.FramesToRecover {
|
if 0 == currPlayerDownsync.FramesToRecover {
|
||||||
if 0 != effDx || 0 != effDy {
|
if 0 != effDx || 0 != effDy {
|
||||||
thatPlayerInNextFrame.DirX, thatPlayerInNextFrame.DirY = effDx, effDy
|
if 0 != effDx {
|
||||||
|
thatPlayerInNextFrame.DirX = effDx
|
||||||
|
}
|
||||||
|
thatPlayerInNextFrame.DirY = effDy
|
||||||
thatPlayerInNextFrame.VelX = effDx * currPlayerDownsync.Speed
|
thatPlayerInNextFrame.VelX = effDx * currPlayerDownsync.Speed
|
||||||
thatPlayerInNextFrame.CharacterState = ATK_CHARACTER_STATE_WALKING
|
thatPlayerInNextFrame.CharacterState = ATK_CHARACTER_STATE_WALKING
|
||||||
} else {
|
} else {
|
||||||
|
@ -130,7 +130,7 @@ var Characters = map[int]*CharacterConfig{
|
|||||||
if currPlayerDownsync.InAir {
|
if currPlayerDownsync.InAir {
|
||||||
return 257
|
return 257
|
||||||
} else {
|
} else {
|
||||||
return 10
|
return 7
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Now that "0 < FramesToRecover", we're only able to fire any skill if it's a cancellation
|
// Now that "0 < FramesToRecover", we're only able to fire any skill if it's a cancellation
|
||||||
@ -145,6 +145,14 @@ var Characters = map[int]*CharacterConfig{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else if 2 == patternId {
|
||||||
|
if !currPlayerDownsync.InAir {
|
||||||
|
return 11
|
||||||
|
}
|
||||||
|
} else if 3 == patternId {
|
||||||
|
if !currPlayerDownsync.InAir {
|
||||||
|
return 10
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// By default no skill can be fired
|
// By default no skill can be fired
|
||||||
@ -227,7 +235,7 @@ var skills = map[int]*Skill{
|
|||||||
Hits: []interface{}{
|
Hits: []interface{}{
|
||||||
&MeleeBullet{
|
&MeleeBullet{
|
||||||
Bullet: Bullet{
|
Bullet: Bullet{
|
||||||
StartupFrames: int32(15),
|
StartupFrames: int32(8),
|
||||||
ActiveFrames: int32(30),
|
ActiveFrames: int32(30),
|
||||||
HitStunFrames: MAX_INT32,
|
HitStunFrames: MAX_INT32,
|
||||||
BlockStunFrames: int32(9),
|
BlockStunFrames: int32(9),
|
||||||
@ -236,9 +244,9 @@ var skills = map[int]*Skill{
|
|||||||
SelfLockVelY: int32(float64(5) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
SelfLockVelY: int32(float64(5) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
PushbackVelX: int32(float64(2) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
PushbackVelX: int32(float64(2) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
PushbackVelY: int32(float64(7) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
PushbackVelY: int32(float64(7) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
HitboxOffsetX: int32(float64(32) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
HitboxOffsetX: int32(float64(16) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
HitboxOffsetY: int32(0),
|
HitboxOffsetY: int32(float64(8) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
HitboxSizeX: int32(float64(48) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
HitboxSizeX: int32(float64(32) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
HitboxSizeY: int32(float64(32) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
HitboxSizeY: int32(float64(32) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
BlowUp: true,
|
BlowUp: true,
|
||||||
},
|
},
|
||||||
@ -318,7 +326,7 @@ var skills = map[int]*Skill{
|
|||||||
Hits: []interface{}{
|
Hits: []interface{}{
|
||||||
&MeleeBullet{
|
&MeleeBullet{
|
||||||
Bullet: Bullet{
|
Bullet: Bullet{
|
||||||
StartupFrames: int32(15),
|
StartupFrames: int32(8),
|
||||||
ActiveFrames: int32(28),
|
ActiveFrames: int32(28),
|
||||||
HitStunFrames: MAX_INT32,
|
HitStunFrames: MAX_INT32,
|
||||||
BlockStunFrames: int32(9),
|
BlockStunFrames: int32(9),
|
||||||
@ -326,7 +334,7 @@ var skills = map[int]*Skill{
|
|||||||
SelfLockVelX: int32(float64(-0.1) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
SelfLockVelX: int32(float64(-0.1) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
SelfLockVelY: NO_LOCK_VEL,
|
SelfLockVelY: NO_LOCK_VEL,
|
||||||
PushbackVelX: int32(float64(2) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
PushbackVelX: int32(float64(2) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
PushbackVelY: int32(float64(7) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
PushbackVelY: NO_LOCK_VEL,
|
||||||
HitboxOffsetX: int32(float64(24) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
HitboxOffsetX: int32(float64(24) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
HitboxOffsetY: int32(0),
|
HitboxOffsetY: int32(0),
|
||||||
HitboxSizeX: int32(float64(32) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
HitboxSizeX: int32(float64(32) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
@ -350,7 +358,7 @@ var skills = map[int]*Skill{
|
|||||||
HitStunFrames: int32(13),
|
HitStunFrames: int32(13),
|
||||||
BlockStunFrames: int32(9),
|
BlockStunFrames: int32(9),
|
||||||
Damage: int32(5),
|
Damage: int32(5),
|
||||||
SelfLockVelX: int32(float64(0.05) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
SelfLockVelX: NO_LOCK_VEL,
|
||||||
SelfLockVelY: NO_LOCK_VEL,
|
SelfLockVelY: NO_LOCK_VEL,
|
||||||
PushbackVelX: int32(float64(0.5) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
PushbackVelX: int32(float64(0.5) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
PushbackVelY: int32(0),
|
PushbackVelY: int32(0),
|
||||||
@ -362,7 +370,7 @@ var skills = map[int]*Skill{
|
|||||||
CancellableEdFrame: int32(30),
|
CancellableEdFrame: int32(30),
|
||||||
|
|
||||||
CancelTransit: map[int]int{
|
CancelTransit: map[int]int{
|
||||||
1: 2,
|
1: 8,
|
||||||
},
|
},
|
||||||
// TODO: Use non-zero "selfLockVel"
|
// TODO: Use non-zero "selfLockVel"
|
||||||
},
|
},
|
||||||
@ -394,34 +402,35 @@ var skills = map[int]*Skill{
|
|||||||
CancellableStFrame: int32(22),
|
CancellableStFrame: int32(22),
|
||||||
CancellableEdFrame: int32(36),
|
CancellableEdFrame: int32(36),
|
||||||
CancelTransit: map[int]int{
|
CancelTransit: map[int]int{
|
||||||
1: 3,
|
1: 9,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
9: &Skill{
|
9: &Skill{
|
||||||
RecoveryFrames: int32(50),
|
RecoveryFrames: int32(40),
|
||||||
RecoveryFramesOnBlock: int32(50),
|
RecoveryFramesOnBlock: int32(40),
|
||||||
RecoveryFramesOnHit: int32(50),
|
RecoveryFramesOnHit: int32(40),
|
||||||
ReleaseTriggerType: int32(1),
|
ReleaseTriggerType: int32(1),
|
||||||
BoundChState: ATK_CHARACTER_STATE_ATK3,
|
BoundChState: ATK_CHARACTER_STATE_ATK3,
|
||||||
Hits: []interface{}{
|
Hits: []interface{}{
|
||||||
&MeleeBullet{
|
&MeleeBullet{
|
||||||
Bullet: Bullet{
|
Bullet: Bullet{
|
||||||
StartupFrames: int32(15),
|
StartupFrames: int32(7),
|
||||||
ActiveFrames: int32(30),
|
ActiveFrames: int32(30),
|
||||||
HitStunFrames: MAX_INT32,
|
HitStunFrames: MAX_INT32,
|
||||||
BlockStunFrames: int32(9),
|
BlockStunFrames: int32(9),
|
||||||
Damage: int32(10),
|
Damage: int32(10),
|
||||||
SelfLockVelX: int32(float64(0.5) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
SelfLockVelX: int32(float64(1) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
SelfLockVelY: int32(float64(5) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
SelfLockVelY: NO_LOCK_VEL,
|
||||||
PushbackVelX: int32(float64(2) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
PushbackVelX: int32(float64(2) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
PushbackVelY: int32(float64(7) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
PushbackVelY: int32(float64(4) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
HitboxOffsetX: int32(float64(32) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
HitboxOffsetX: int32(float64(10) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
HitboxOffsetY: int32(0),
|
HitboxOffsetY: int32(0),
|
||||||
HitboxSizeX: int32(float64(48) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
HitboxSizeX: int32(float64(32) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
HitboxSizeY: int32(float64(32) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
HitboxSizeY: int32(float64(32) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
|
BlowUp: true,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -447,13 +456,40 @@ var skills = map[int]*Skill{
|
|||||||
PushbackVelX: int32(float64(2) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
PushbackVelX: int32(float64(2) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
PushbackVelY: int32(0),
|
PushbackVelY: int32(0),
|
||||||
HitboxOffsetX: int32(float64(32) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
HitboxOffsetX: int32(float64(32) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
HitboxOffsetY: int32(0),
|
HitboxOffsetY: int32(float64(5) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
HitboxSizeX: int32(float64(48) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
HitboxSizeX: int32(float64(48) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
HitboxSizeY: int32(float64(32) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
HitboxSizeY: int32(float64(32) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
11: &Skill{
|
||||||
|
RecoveryFrames: int32(60),
|
||||||
|
RecoveryFramesOnBlock: int32(60),
|
||||||
|
RecoveryFramesOnHit: int32(60),
|
||||||
|
ReleaseTriggerType: int32(1),
|
||||||
|
BoundChState: ATK_CHARACTER_STATE_ATK5,
|
||||||
|
Hits: []interface{}{
|
||||||
|
&MeleeBullet{
|
||||||
|
Bullet: Bullet{
|
||||||
|
StartupFrames: int32(3),
|
||||||
|
ActiveFrames: int32(25),
|
||||||
|
HitStunFrames: MAX_INT32,
|
||||||
|
BlockStunFrames: int32(9),
|
||||||
|
Damage: int32(30),
|
||||||
|
SelfLockVelX: int32(float64(1) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
|
SelfLockVelY: int32(float64(8) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
|
PushbackVelX: int32(float64(2) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
|
PushbackVelY: int32(float64(7) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
|
HitboxOffsetX: int32(float64(8) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
|
HitboxOffsetY: int32(0),
|
||||||
|
HitboxSizeX: int32(float64(40) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
|
HitboxSizeY: int32(float64(64) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
|
BlowUp: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
255: &Skill{
|
255: &Skill{
|
||||||
RecoveryFrames: int32(30),
|
RecoveryFrames: int32(30),
|
||||||
RecoveryFramesOnBlock: int32(30),
|
RecoveryFramesOnBlock: int32(30),
|
||||||
|
Loading…
Reference in New Issue
Block a user