mirror of
https://github.com/unanmed/HumanBreak.git
synced 2025-01-31 23:29:27 +08:00
fix: 大地图自动寻路
This commit is contained in:
parent
f98362f748
commit
c6b701c9ff
@ -660,24 +660,6 @@ actions.prototype._sys_ondown = function (x, y, px, py) {
|
|||||||
|
|
||||||
clearTimeout(core.timeout.onDownTimeout);
|
clearTimeout(core.timeout.onDownTimeout);
|
||||||
core.timeout.onDownTimeout = null;
|
core.timeout.onDownTimeout = null;
|
||||||
core.status.preview.prepareDragging = false;
|
|
||||||
if (
|
|
||||||
!core.hasFlag('__lockViewport__') &&
|
|
||||||
(core.status.thisMap.width > core._WIDTH_ ||
|
|
||||||
core.status.thisMap.height > core._HEIGHT_)
|
|
||||||
) {
|
|
||||||
core.status.preview.prepareDragging = true;
|
|
||||||
core.status.preview.px = px;
|
|
||||||
core.status.preview.py = py;
|
|
||||||
core.timeout.onDownTimeout = setTimeout(function () {
|
|
||||||
core.clearMap('ui');
|
|
||||||
core.status.preview.prepareDragging = false;
|
|
||||||
core.status.preview.enabled = true;
|
|
||||||
core.status.preview.dragging = true;
|
|
||||||
core.drawTip('已进入预览模式,可直接拖动大地图');
|
|
||||||
core.status.stepPostfix = [];
|
|
||||||
}, 500);
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
////// 当在触摸屏上滑动时 //////
|
////// 当在触摸屏上滑动时 //////
|
||||||
@ -730,24 +712,6 @@ actions.prototype._sys_onmove_choices = function (x, y, px, py) {
|
|||||||
actions.prototype._sys_onmove = function (x, y, px, py) {
|
actions.prototype._sys_onmove = function (x, y, px, py) {
|
||||||
if (core.status.lockControl) return false;
|
if (core.status.lockControl) return false;
|
||||||
|
|
||||||
if (core.status.preview?.dragging) {
|
|
||||||
core.setViewport(
|
|
||||||
core.bigmap.offsetX - px + core.status.preview.px,
|
|
||||||
core.bigmap.offsetY - py + core.status.preview.py
|
|
||||||
);
|
|
||||||
core.status.preview.px = px;
|
|
||||||
core.status.preview.py = py;
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if (core.status.preview?.prepareDragging) {
|
|
||||||
if (
|
|
||||||
Math.abs(px - core.status.preview.px) <= 20 &&
|
|
||||||
Math.abs(py - core.status.preview.py) <= 20
|
|
||||||
)
|
|
||||||
return true;
|
|
||||||
else core.status.preview.prepareDragging = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
clearTimeout(core.timeout.onDownTimeout);
|
clearTimeout(core.timeout.onDownTimeout);
|
||||||
core.timeout.onDownTimeout = null;
|
core.timeout.onDownTimeout = null;
|
||||||
|
|
||||||
@ -810,14 +774,6 @@ actions.prototype._sys_onup = function (x, y, px, py) {
|
|||||||
clearInterval(core.interval.onDownInterval);
|
clearInterval(core.interval.onDownInterval);
|
||||||
core.interval.onDownInterval = null;
|
core.interval.onDownInterval = null;
|
||||||
|
|
||||||
if (core.isPlaying()) {
|
|
||||||
core.status.preview.prepareDragging = false;
|
|
||||||
if (core.status.preview.dragging) {
|
|
||||||
core.status.preview.dragging = false;
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((core.status.stepPostfix || []).length == 0) return false;
|
if ((core.status.stepPostfix || []).length == 0) return false;
|
||||||
|
|
||||||
var stepPostfix = [];
|
var stepPostfix = [];
|
||||||
|
@ -229,8 +229,7 @@ control.prototype._animationFrame_globalAnimate = function (timestamp) {
|
|||||||
if (
|
if (
|
||||||
(core.status.hero || {}).animate &&
|
(core.status.hero || {}).animate &&
|
||||||
core.status.heroMoving == 0 &&
|
core.status.heroMoving == 0 &&
|
||||||
main.mode == 'play' &&
|
main.mode == 'play'
|
||||||
!core.status.preview.enabled
|
|
||||||
) {
|
) {
|
||||||
core.drawHero('stop', null, core.status.globalAnimateStatus);
|
core.drawHero('stop', null, core.status.globalAnimateStatus);
|
||||||
}
|
}
|
||||||
|
@ -191,13 +191,6 @@ function core() {
|
|||||||
// 按下键的时间:为了判定双击
|
// 按下键的时间:为了判定双击
|
||||||
downTime: null,
|
downTime: null,
|
||||||
ctrlDown: false,
|
ctrlDown: false,
|
||||||
preview: {
|
|
||||||
enabled: false,
|
|
||||||
prepareDragging: false,
|
|
||||||
dragging: false,
|
|
||||||
px: 0,
|
|
||||||
py: 0
|
|
||||||
},
|
|
||||||
|
|
||||||
// 路线&回放
|
// 路线&回放
|
||||||
route: [],
|
route: [],
|
||||||
|
@ -171,8 +171,12 @@ export function init() {
|
|||||||
adapters['hero-adapter']?.sync('setAnimateDir', value);
|
adapters['hero-adapter']?.sync('setAnimateDir', value);
|
||||||
setHeroDirection(value as Dir);
|
setHeroDirection(value as Dir);
|
||||||
} else if (name === 'x') {
|
} else if (name === 'x') {
|
||||||
|
// 为了防止逆天样板出问题
|
||||||
|
core.bigmap.posX = value as number;
|
||||||
adapters['hero-adapter']?.sync('setHeroLoc', value);
|
adapters['hero-adapter']?.sync('setHeroLoc', value);
|
||||||
} else {
|
} else {
|
||||||
|
// 为了防止逆天样板出问题
|
||||||
|
core.bigmap.posY = value as number;
|
||||||
adapters['hero-adapter']?.sync('setHeroLoc', void 0, value);
|
adapters['hero-adapter']?.sync('setHeroLoc', void 0, value);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
33
src/types/status.d.ts
vendored
33
src/types/status.d.ts
vendored
@ -542,33 +542,6 @@ interface AnimateObj {
|
|||||||
callback: () => void;
|
callback: () => void;
|
||||||
}
|
}
|
||||||
|
|
||||||
interface ActionsPreview {
|
|
||||||
/**
|
|
||||||
* 大地图中当前是否正在拖拽
|
|
||||||
*/
|
|
||||||
dragging: boolean;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 大地图中是否允许拖拽
|
|
||||||
*/
|
|
||||||
enabled: boolean;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 大地图中当前是否已经按下了鼠标
|
|
||||||
*/
|
|
||||||
prepareDragging: boolean;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 当前鼠标的横坐标
|
|
||||||
*/
|
|
||||||
px: number;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 当前鼠标的纵坐标
|
|
||||||
*/
|
|
||||||
py: number;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface RouteFolding {
|
interface RouteFolding {
|
||||||
/**
|
/**
|
||||||
* 录像折叠信息中的勇士信息
|
* 录像折叠信息中的勇士信息
|
||||||
@ -762,12 +735,6 @@ interface InitGameStatus {
|
|||||||
[P in keyof NumberToId]: Block<P>;
|
[P in keyof NumberToId]: Block<P>;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
|
||||||
* @deprecated
|
|
||||||
* 大地图中的拖拽处理
|
|
||||||
*/
|
|
||||||
preview: ActionsPreview;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 录像折叠信息
|
* 录像折叠信息
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user