キーボード縦移動修正
by
cutfloss
06/01 [2026/06/01 00:28:51]
キーボード縦移動時にちゃんとまっすぐになるぞ!
@@ -13,7 +13,7 @@
let useAlternative = false;
setInterval(function() {
useAlternative = !useAlternative;
- }, 2000);
+ }, 10);
/* WebSocketの送信関数(大元)をハック */
const originalSend = WebSocket.prototype.send;
/*
* @title キーボード縦移動修正
* @description キーボード縦移動時にちゃんとまっすぐになるぞ!
* @private
*/
javascript:(function(){
if (window._intervalSwitchPatch) {
alert('パッチはすでに適用されています。');
return;
}
/* 2秒(2000ミリ秒)ごとに true / false を切り替えるタイマー */
let useAlternative = false;
setInterval(function() {
useAlternative = !useAlternative;
}, 10);
/* WebSocketの送信関数(大元)をハック */
const originalSend = WebSocket.prototype.send;
WebSocket.prototype.send = function(data) {
/* 送信データが1バイト(移動パケット)のときだけ中身を見る */
if (data && (data.byteLength === 1 || data.length === 1)) {
const view = new Uint8Array(data.buffer || data);
let currentByte = view[0];
/* 【真上移動のとき】 */
if (currentByte === 64) {
/* 2秒ごとに 64(右逸れ)と 63(左逸れ)を入れ替える */
if (useAlternative) {
view[0] = 63;
}
}
/* 【真下移動のとき】 */
else if (currentByte === 191) {
/* 2秒ごとに 191(左逸れ)と 190(右逸れ)を入れ替える */
if (useAlternative) {
view[0] = 190;
}
}
}
return originalSend.apply(this, arguments);
};
window._intervalSwitchPatch = true;
alert('【2秒周期・スイッチパッチ】\n2秒ごとに、本来の向きと逆の向き(64⇄63 / 191⇄190)を自動で切り替えます!\nいつもの矢印キーで動かしてみてください。');
})();
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。