mirror of
https://github.com/genxium/DelayNoMore
synced 2024-12-26 11:48:56 +00:00
Fixed inertia on jumping.
This commit is contained in:
parent
00816fb636
commit
d06cb18a08
File diff suppressed because one or more lines are too long
@ -362,7 +362,7 @@
|
|||||||
"array": [
|
"array": [
|
||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
216.50635094610968,
|
210.43934936178934,
|
||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
|
@ -537,7 +537,7 @@
|
|||||||
"array": [
|
"array": [
|
||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
216.50635094610968,
|
210.43934936178934,
|
||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
|
@ -38,7 +38,7 @@
|
|||||||
"orientation": "portrait"
|
"orientation": "portrait"
|
||||||
},
|
},
|
||||||
"startScene": "2ff474d9-0c9e-4fe3-87ec-fbff7cae85b4",
|
"startScene": "2ff474d9-0c9e-4fe3-87ec-fbff7cae85b4",
|
||||||
"title": "TreasureHunterX",
|
"title": "DelayNoMore",
|
||||||
"webOrientation": "portrait",
|
"webOrientation": "portrait",
|
||||||
"wechatgame": {
|
"wechatgame": {
|
||||||
"REMOTE_SERVER_ROOT": "https://bgmoba.lokcol.com/static/",
|
"REMOTE_SERVER_ROOT": "https://bgmoba.lokcol.com/static/",
|
||||||
|
@ -478,12 +478,16 @@ func deriveOpPattern(currPlayerDownsync, thatPlayerInNextFrame *PlayerDownsync,
|
|||||||
prevBtnBLevel = prevDecodedInput.BtnBLevel
|
prevBtnBLevel = prevDecodedInput.BtnBLevel
|
||||||
}
|
}
|
||||||
|
|
||||||
patternId := PATTERN_ID_NO_OP
|
// Jumping is partially allowed within "CapturedByInertia", but moving is only allowed when "0 == FramesToRecover" (constrained later in "ApplyInputFrameDownsyncDynamicsOnSingleRenderFrame")
|
||||||
if 0 == currPlayerDownsync.FramesToRecover || currPlayerDownsync.CapturedByInertia {
|
if 0 == currPlayerDownsync.FramesToRecover {
|
||||||
// Jumping is allowed within "CapturedByInertia", but moving is only allowed when "0 == FramesToRecover" (constrained later in "ApplyInputFrameDownsyncDynamicsOnSingleRenderFrame")
|
|
||||||
effDx, effDy = decodedInput.Dx, decodedInput.Dy
|
effDx, effDy = decodedInput.Dx, decodedInput.Dy
|
||||||
|
}
|
||||||
|
|
||||||
|
patternId := PATTERN_ID_NO_OP
|
||||||
|
canJumpWithinInertia := currPlayerDownsync.CapturedByInertia && ((chConfig.InertiaFramesToRecover >> 1) > currPlayerDownsync.FramesToRecover)
|
||||||
|
if 0 == currPlayerDownsync.FramesToRecover || canJumpWithinInertia {
|
||||||
if decodedInput.BtnBLevel > prevBtnBLevel {
|
if decodedInput.BtnBLevel > prevBtnBLevel {
|
||||||
if chConfig.DashingEnabled && 0 > effDy {
|
if chConfig.DashingEnabled && 0 > decodedInput.Dy {
|
||||||
// Checking "DashingEnabled" here to allow jumping when dashing-disabled players pressed "DOWN + BtnB"
|
// Checking "DashingEnabled" here to allow jumping when dashing-disabled players pressed "DOWN + BtnB"
|
||||||
patternId = 5
|
patternId = 5
|
||||||
} else if _, existent := inAirSet[currPlayerDownsync.CharacterState]; !existent {
|
} else if _, existent := inAirSet[currPlayerDownsync.CharacterState]; !existent {
|
||||||
@ -497,9 +501,9 @@ func deriveOpPattern(currPlayerDownsync, thatPlayerInNextFrame *PlayerDownsync,
|
|||||||
if PATTERN_ID_NO_OP == patternId {
|
if PATTERN_ID_NO_OP == patternId {
|
||||||
if 0 < decodedInput.BtnALevel {
|
if 0 < decodedInput.BtnALevel {
|
||||||
if decodedInput.BtnALevel > prevBtnALevel {
|
if decodedInput.BtnALevel > prevBtnALevel {
|
||||||
if 0 > effDy {
|
if 0 > decodedInput.Dy {
|
||||||
patternId = 3
|
patternId = 3
|
||||||
} else if 0 < effDy {
|
} else if 0 < decodedInput.Dy {
|
||||||
patternId = 2
|
patternId = 2
|
||||||
} else {
|
} else {
|
||||||
patternId = 1
|
patternId = 1
|
||||||
|
@ -511,7 +511,7 @@ 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(24) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
HitboxOffsetX: int32(float64(24) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
||||||
HitboxOffsetY: int32(float64(5) * WORLD_TO_VIRTUAL_GRID_RATIO),
|
HitboxOffsetY: int32(float64(8) * 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),
|
||||||
BlowUp: false,
|
BlowUp: false,
|
||||||
|
Loading…
Reference in New Issue
Block a user