next2d-development-mcp 1.5.0 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -104,6 +104,11 @@ sprite.addEventListener(PointerEvent.POINTER_UP, handler);
104
104
  | `PointerEvent` | `DOUBLE_CLICK` | `"dblclick"` | ダブルクリック |
105
105
  | `KeyboardEvent` | `KEY_DOWN` | `"keydown"` | キー押下 |
106
106
  | `KeyboardEvent` | `KEY_UP` | `"keyup"` | キー解放 |
107
+ | `GamepadEvent` | `GAMEPAD_CONNECTED` | `"gamepadconnected"` | ゲームパッド接続 |
108
+ | `GamepadEvent` | `GAMEPAD_DISCONNECTED` | `"gamepaddisconnected"` | ゲームパッド切断 |
109
+ | `GamepadEvent` | `BUTTON_DOWN` | `"gamepadbuttondown"` | ボタン押下 |
110
+ | `GamepadEvent` | `BUTTON_UP` | `"gamepadbuttonup"` | ボタン解放 |
111
+ | `GamepadEvent` | `AXES_MOTION` | `"gamepadaxesmotion"` | スティック変化(閾値 0.1) |
107
112
  | `FocusEvent` | `FOCUS_IN` | `"focusin"` | フォーカス取得 |
108
113
  | `FocusEvent` | `FOCUS_OUT` | `"focusout"` | フォーカス喪失 |
109
114
  | `WheelEvent` | `WHEEL` | `"wheel"` | ホイール操作 |
@@ -231,6 +236,59 @@ stage.addEventListener(KeyboardEvent.KEY_DOWN, (event) => {
231
236
 
232
237
  ---
233
238
 
239
+ # ゲームパッドイベント
240
+
241
+ Web Gamepad APIを通じてゲームコントローラーの入力を処理します。すべてのゲームパッドイベントは `stage` に対して発行されます。
242
+
243
+ > **ブラウザ要件**: ゲームパッドはページにフォーカスがある状態でコントローラーのボタンを押すことで認識されます(ブラウザのセキュリティ仕様)。
244
+
245
+ | イベント | 定数 | 説明 |
246
+ |----------|------|------|
247
+ | `gamepadconnected` | `GamepadEvent.GAMEPAD_CONNECTED` | ゲームパッドが接続・認識された |
248
+ | `gamepaddisconnected` | `GamepadEvent.GAMEPAD_DISCONNECTED` | ゲームパッドが切断された |
249
+ | `gamepadbuttondown` | `GamepadEvent.BUTTON_DOWN` | ボタンが押された |
250
+ | `gamepadbuttonup` | `GamepadEvent.BUTTON_UP` | ボタンが離された |
251
+ | `gamepadaxesmotion` | `GamepadEvent.AXES_MOTION` | スティック(軸)が変化した(閾値 0.1) |
252
+
253
+ ## GamepadEvent プロパティ
254
+
255
+ | プロパティ | 型 | 説明 |
256
+ |-----------|------|------|
257
+ | `gamepadIndex` | number | ゲームパッドのインデックス番号 |
258
+ | `buttonIndex` | number \| undefined | ボタン番号(BUTTON_DOWN/UP 時) |
259
+ | `buttonValue` | number \| undefined | ボタンの押し具合 0.0〜1.0(BUTTON_DOWN/UP 時) |
260
+ | `axisIndex` | number \| undefined | 軸の番号(AXES_MOTION 時) |
261
+ | `axisValue` | number \| undefined | 軸の値 -1.0〜1.0(AXES_MOTION 時) |
262
+
263
+ ```typescript
264
+ const { GamepadEvent } = next2d.events;
265
+
266
+ // 接続・切断
267
+ stage.addEventListener(GamepadEvent.GAMEPAD_CONNECTED, (event) => {
268
+ console.log(`ゲームパッド ${event.gamepadIndex} が接続されました`);
269
+ });
270
+
271
+ stage.addEventListener(GamepadEvent.GAMEPAD_DISCONNECTED, (event) => {
272
+ console.log(`ゲームパッド ${event.gamepadIndex} が切断されました`);
273
+ });
274
+
275
+ // ボタン操作
276
+ stage.addEventListener(GamepadEvent.BUTTON_DOWN, (event) => {
277
+ console.log(`ボタン ${event.buttonIndex} 押下 (value: ${event.buttonValue})`);
278
+ });
279
+
280
+ stage.addEventListener(GamepadEvent.BUTTON_UP, (event) => {
281
+ console.log(`ボタン ${event.buttonIndex} 解放`);
282
+ });
283
+
284
+ // スティック操作
285
+ stage.addEventListener(GamepadEvent.AXES_MOTION, (event) => {
286
+ console.log(`軸 ${event.axisIndex}: ${event.axisValue}`);
287
+ });
288
+ ```
289
+
290
+ ---
291
+
234
292
  # フォーカスイベント
235
293
 
236
294
  | イベント | 定数 | 説明 |
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "next2d-development-mcp",
3
3
  "displayName": "Next2D Development MCP",
4
- "version": "1.5.0",
4
+ "version": "1.6.0",
5
5
  "description": "MCP server for Next2D application development assistance",
6
6
  "type": "module",
7
7
  "author": "Toshiyuki Ienaga <ienaga@next2d.app>",
@@ -53,18 +53,18 @@
53
53
  "devDependencies": {
54
54
  "@eslint/js": "^10.0.1",
55
55
  "@types/node": "^25.9.3",
56
- "@types/vscode": "^1.115.0",
57
- "@typescript-eslint/eslint-plugin": "^8.61.0",
58
- "@typescript-eslint/parser": "^8.61.0",
56
+ "@types/vscode": "^1.120.0",
57
+ "@typescript-eslint/eslint-plugin": "^8.61.1",
58
+ "@typescript-eslint/parser": "^8.61.1",
59
59
  "@vscode/vsce": "^3.9.2",
60
60
  "eslint": "^10.5.0",
61
61
  "eslint-plugin-unused-imports": "^4.4.1",
62
62
  "globals": "^17.6.0",
63
63
  "typescript": "^6.0.3",
64
- "vitest": "^4.1.8"
64
+ "vitest": "^4.1.9"
65
65
  },
66
66
  "engines": {
67
- "node": ">=22.0.0",
68
- "vscode": "^1.115.0"
67
+ "node": ">=24.0.0",
68
+ "vscode": "^1.120.0"
69
69
  }
70
70
  }