2 #include <Multimedia/SDX.h>
3 #include <Multimedia/Key.h>
4 #include <Multimedia/InputEnum.h>
13 Keyboard(
const Keyboard &key){};
14 Keyboard& operator =(
const Keyboard &key){};
238 DxLib::GetHitKeyStateAll( Buf );
240 Back.
Update( Buf[ (
int)KeyCode::Back ] );
241 Tab.
Update( Buf[ (
int)KeyCode::Tab ] );
242 Return.
Update( Buf[ (
int)KeyCode::Return ] );
243 LShift.
Update( Buf[ (
int)KeyCode::LShift ] );
244 RShift.
Update( Buf[ (
int)KeyCode::RShift ] );
245 LControl.
Update( Buf[ (
int)KeyCode::LControl ] );
246 RControl.
Update( Buf[ (
int)KeyCode::RControl ] );
247 Escape.
Update( Buf[ (
int)KeyCode::Escape ] );
248 Space.
Update( Buf[ (
int)KeyCode::Space ] );
249 PageUp.
Update( Buf[ (
int)KeyCode::PageUp ] );
250 PageDown.
Update( Buf[ (
int)KeyCode::PageDown ] );
251 End.
Update( Buf[ (
int)KeyCode::End ] );
252 Home.
Update( Buf[ (
int)KeyCode::Home ] );
253 Left.
Update( Buf[ (
int)KeyCode::Left ] );
254 Up.
Update( Buf[ (
int)KeyCode::Up ] );
255 Right.
Update( Buf[ (
int)KeyCode::Right ] );
256 Down.
Update( Buf[ (
int)KeyCode::Down ] );
257 Insert.
Update( Buf[ (
int)KeyCode::Insert ] );
258 Delete.
Update( Buf[ (
int)KeyCode::Delete ] );
260 Minus.
Update( Buf[ (
int)KeyCode::Minus ] );
261 Yen.
Update( Buf[ (
int)KeyCode::Yen ] );
262 PrevTrack.
Update( Buf[ (
int)KeyCode::PrevTrack ] );
263 Period.
Update( Buf[ (
int)KeyCode::Period ] );
264 Slash.
Update( Buf[ (
int)KeyCode::Slash ] );
265 LAlt.
Update( Buf[ (
int)KeyCode::LAlt ] );
266 RAlt.
Update( Buf[ (
int)KeyCode::RAlt ] );
267 Scroll.
Update( Buf[ (
int)KeyCode::Scroll ] );
268 Semicolon.
Update( Buf[ (
int)KeyCode::Semicolon ] );
269 Colon.
Update( Buf[ (
int)KeyCode::Colon ] );
270 LBracket.
Update( Buf[ (
int)KeyCode::LBracket ] );
271 RBracket.
Update( Buf[ (
int)KeyCode::RBracket ] );
272 At.
Update( Buf[ (
int)KeyCode::At ] );
273 Backslash.
Update( Buf[ (
int)KeyCode::Backslash ] );
274 Comma.
Update( Buf[ (
int)KeyCode::Comma ] );
275 Capslock.
Update( Buf[ (
int)KeyCode::Capslock ] );
276 Pause.
Update( Buf[ (
int)KeyCode::Pause ] );
278 Numpad0.
Update( Buf[ (
int)KeyCode::Numpad0 ] );
279 Numpad1.
Update( Buf[ (
int)KeyCode::Numpad1 ] );
280 Numpad2.
Update( Buf[ (
int)KeyCode::Numpad2 ] );
281 Numpad3.
Update( Buf[ (
int)KeyCode::Numpad3 ] );
282 Numpad4.
Update( Buf[ (
int)KeyCode::Numpad4 ] );
283 Numpad5.
Update( Buf[ (
int)KeyCode::Numpad5 ] );
284 Numpad6.
Update( Buf[ (
int)KeyCode::Numpad6 ] );
285 Numpad7.
Update( Buf[ (
int)KeyCode::Numpad7 ] );
286 Numpad8.
Update( Buf[ (
int)KeyCode::Numpad8 ] );
287 Numpad9.
Update( Buf[ (
int)KeyCode::Numpad9 ] );
288 Multiply.
Update( Buf[ (
int)KeyCode::Multiply ] );
289 Add.
Update( Buf[ (
int)KeyCode::Add ] );
290 Subtract.
Update( Buf[ (
int)KeyCode::Subtract ] );
291 Decimal.
Update( Buf[ (
int)KeyCode::Decimal ] );
292 Divide.
Update( Buf[ (
int)KeyCode::Divide ] );
293 NUMPADEnter.
Update( Buf[ (
int)KeyCode::NUMPADEnter ] );
295 F1.
Update( Buf[ (
int)KeyCode::F1 ] );
296 F2.
Update( Buf[ (
int)KeyCode::F2 ] );
297 F3.
Update( Buf[ (
int)KeyCode::F3 ] );
298 F4.
Update( Buf[ (
int)KeyCode::F4 ] );
299 F5.
Update( Buf[ (
int)KeyCode::F5 ] );
300 F6.
Update( Buf[ (
int)KeyCode::F6 ] );
301 F7.
Update( Buf[ (
int)KeyCode::F7 ] );
302 F8.
Update( Buf[ (
int)KeyCode::F8 ] );
303 F9.
Update( Buf[ (
int)KeyCode::F9 ] );
304 F10.
Update( Buf[ (
int)KeyCode::F10 ] );
305 F11.
Update( Buf[ (
int)KeyCode::F11 ] );
306 F12.
Update( Buf[ (
int)KeyCode::F12 ] );
308 A.
Update( Buf[ (
int)KeyCode::A ] );
309 B.
Update( Buf[ (
int)KeyCode::B ] );
310 C.
Update( Buf[ (
int)KeyCode::C ] );
311 D.
Update( Buf[ (
int)KeyCode::D ] );
312 E.
Update( Buf[ (
int)KeyCode::E ] );
313 F.
Update( Buf[ (
int)KeyCode::F ] );
314 G.
Update( Buf[ (
int)KeyCode::G ] );
315 H.
Update( Buf[ (
int)KeyCode::H ] );
316 I.
Update( Buf[ (
int)KeyCode::I ] );
317 J.
Update( Buf[ (
int)KeyCode::J ] );
318 K.
Update( Buf[ (
int)KeyCode::K ] );
319 L.
Update( Buf[ (
int)KeyCode::L ] );
320 M.
Update( Buf[ (
int)KeyCode::M ] );
321 N.
Update( Buf[ (
int)KeyCode::N ] );
322 O.
Update( Buf[ (
int)KeyCode::O ] );
323 P.
Update( Buf[ (
int)KeyCode::P ] );
324 Q.
Update( Buf[ (
int)KeyCode::Q ] );
325 R.
Update( Buf[ (
int)KeyCode::R ] );
326 S.
Update( Buf[ (
int)KeyCode::S ] );
327 T.
Update( Buf[ (
int)KeyCode::T ] );
328 U.
Update( Buf[ (
int)KeyCode::U ] );
329 V.
Update( Buf[ (
int)KeyCode::V ] );
330 W.
Update( Buf[ (
int)KeyCode::W ] );
331 X.
Update( Buf[ (
int)KeyCode::X ] );
332 Y.
Update( Buf[ (
int)KeyCode::Y ] );
333 Z.
Update( Buf[ (
int)KeyCode::Z ] );
334 _0.
Update( Buf[ (
int)KeyCode::_0 ] );
335 _1.
Update( Buf[ (
int)KeyCode::_1 ] );
336 _2.
Update( Buf[ (
int)KeyCode::_2 ] );
337 _3.
Update( Buf[ (
int)KeyCode::_3 ] );
338 _4.
Update( Buf[ (
int)KeyCode::_4 ] );
339 _5.
Update( Buf[ (
int)KeyCode::_5 ] );
340 _6.
Update( Buf[ (
int)KeyCode::_6 ] );
341 _7.
Update( Buf[ (
int)KeyCode::_7 ] );
342 _8.
Update( Buf[ (
int)KeyCode::_8 ] );
343 _9.
Update( Buf[ (
int)KeyCode::_9 ] );
345 Back.
Update( press[ (
int)KeyCode::Back ] );
346 Tab.
Update(press[(
int)KeyCode::Tab]);
347 Return.
Update(press[(
int)KeyCode::Return]);
348 LShift.
Update(press[(
int)KeyCode::LShift]);
349 RShift.
Update(press[(
int)KeyCode::RShift]);
350 LControl.
Update(press[(
int)KeyCode::LControl]);
351 RControl.
Update(press[(
int)KeyCode::RControl]);
352 Escape.
Update(press[(
int)KeyCode::Escape]);
353 Space.
Update(press[(
int)KeyCode::Space]);
354 PageUp.
Update(press[(
int)KeyCode::PageUp]);
355 PageDown.
Update(press[(
int)KeyCode::PageDown]);
356 End.
Update(press[(
int)KeyCode::End]);
357 Home.
Update(press[(
int)KeyCode::Home]);
358 Left.
Update(press[(
int)KeyCode::Left]);
359 Up.
Update(press[(
int)KeyCode::Up]);
360 Right.
Update(press[(
int)KeyCode::Right]);
361 Down.
Update(press[(
int)KeyCode::Down]);
362 Insert.
Update(press[(
int)KeyCode::Insert]);
363 Delete.
Update(press[(
int)KeyCode::Delete]);
365 Minus.
Update(press[(
int)KeyCode::Minus]);
366 Yen.
Update(press[(
int)KeyCode::Yen]);
367 PrevTrack.
Update(press[(
int)KeyCode::PrevTrack]);
368 Period.
Update(press[(
int)KeyCode::Period]);
369 Slash.
Update(press[(
int)KeyCode::Slash]);
370 LAlt.
Update(press[(
int)KeyCode::LAlt]);
371 RAlt.
Update(press[(
int)KeyCode::RAlt]);
372 Scroll.
Update(press[(
int)KeyCode::Scroll]);
373 Semicolon.
Update(press[(
int)KeyCode::Semicolon]);
374 Colon.
Update(press[(
int)KeyCode::Colon]);
375 LBracket.
Update(press[(
int)KeyCode::LBracket]);
376 RBracket.
Update(press[(
int)KeyCode::RBracket]);
377 At.
Update(press[(
int)KeyCode::At]);
378 Backslash.
Update(press[(
int)KeyCode::Backslash]);
379 Comma.
Update(press[(
int)KeyCode::Comma]);
380 Capslock.
Update(press[(
int)KeyCode::Capslock]);
381 Pause.
Update(press[(
int)KeyCode::Pause]);
383 Numpad0.
Update(press[(
int)KeyCode::Numpad0]);
384 Numpad1.
Update(press[(
int)KeyCode::Numpad1]);
385 Numpad2.
Update(press[(
int)KeyCode::Numpad2]);
386 Numpad3.
Update(press[(
int)KeyCode::Numpad3]);
387 Numpad4.
Update(press[(
int)KeyCode::Numpad4]);
388 Numpad5.
Update(press[(
int)KeyCode::Numpad5]);
389 Numpad6.
Update(press[(
int)KeyCode::Numpad6]);
390 Numpad7.
Update(press[(
int)KeyCode::Numpad7]);
391 Numpad8.
Update(press[(
int)KeyCode::Numpad8]);
392 Numpad9.
Update(press[(
int)KeyCode::Numpad9]);
393 Multiply.
Update(press[(
int)KeyCode::Multiply]);
394 Add.
Update(press[(
int)KeyCode::Add]);
395 Subtract.
Update(press[(
int)KeyCode::Subtract]);
396 Decimal.
Update(press[(
int)KeyCode::Decimal]);
397 Divide.
Update(press[(
int)KeyCode::Divide]);
398 NUMPADEnter.
Update(press[(
int)KeyCode::NUMPADEnter]);
400 F1.
Update(press[(
int)KeyCode::F1]);
401 F2.
Update(press[(
int)KeyCode::F2]);
402 F3.
Update(press[(
int)KeyCode::F3]);
403 F4.
Update(press[(
int)KeyCode::F4]);
404 F5.
Update(press[(
int)KeyCode::F5]);
405 F6.
Update(press[(
int)KeyCode::F6]);
406 F7.
Update(press[(
int)KeyCode::F7]);
407 F8.
Update(press[(
int)KeyCode::F8]);
408 F9.
Update(press[(
int)KeyCode::F9]);
409 F10.
Update(press[(
int)KeyCode::F10]);
410 F11.
Update(press[(
int)KeyCode::F11]);
411 F12.
Update(press[(
int)KeyCode::F12]);
413 A.
Update(press[(
int)KeyCode::A]);
414 B.
Update(press[(
int)KeyCode::B]);
415 C.
Update(press[(
int)KeyCode::C]);
416 D.
Update(press[(
int)KeyCode::D]);
417 E.
Update(press[(
int)KeyCode::E]);
418 F.
Update(press[(
int)KeyCode::F]);
419 G.
Update(press[(
int)KeyCode::G]);
420 H.
Update(press[(
int)KeyCode::H]);
421 I.
Update(press[(
int)KeyCode::I]);
422 J.
Update(press[(
int)KeyCode::J]);
423 K.
Update(press[(
int)KeyCode::K]);
424 L.
Update(press[(
int)KeyCode::L]);
425 M.
Update(press[(
int)KeyCode::M]);
426 N.
Update(press[(
int)KeyCode::N]);
427 O.
Update(press[(
int)KeyCode::O]);
428 P.
Update(press[(
int)KeyCode::P]);
429 Q.
Update(press[(
int)KeyCode::Q]);
430 R.
Update(press[(
int)KeyCode::R]);
431 S.
Update(press[(
int)KeyCode::S]);
432 T.
Update(press[(
int)KeyCode::T]);
433 U.
Update(press[(
int)KeyCode::U]);
434 V.
Update(press[(
int)KeyCode::V]);
435 W.
Update(press[(
int)KeyCode::W]);
436 X.
Update(press[(
int)KeyCode::X]);
437 Y.
Update(press[(
int)KeyCode::Y]);
438 Z.
Update(press[(
int)KeyCode::Z]);
439 _0.
Update(press[(
int)KeyCode::_0]);
440 _1.
Update(press[(
int)KeyCode::_1]);
441 _2.
Update(press[(
int)KeyCode::_2]);
442 _3.
Update(press[(
int)KeyCode::_3]);
443 _4.
Update(press[(
int)KeyCode::_4]);
444 _5.
Update(press[(
int)KeyCode::_5]);
445 _6.
Update(press[(
int)KeyCode::_6]);
446 _7.
Update(press[(
int)KeyCode::_7]);
447 _8.
Update(press[(
int)KeyCode::_8]);
448 _9.
Update(press[(
int)KeyCode::_9]);
456 return !DxLib::CheckHitKeyAll();
458 const Uint8 *press = SDL_GetKeyboardState(NULL);
461 press[(
int)KeyCode::Back] ||
462 press[(
int)KeyCode::Tab] ||
463 press[(
int)KeyCode::Return] ||
464 press[(
int)KeyCode::LShift] ||
465 press[(
int)KeyCode::RShift] ||
466 press[(
int)KeyCode::LControl] ||
467 press[(
int)KeyCode::RControl] ||
468 press[(
int)KeyCode::Escape] ||
469 press[(
int)KeyCode::Space] ||
470 press[(
int)KeyCode::PageUp] ||
471 press[(
int)KeyCode::PageDown] ||
472 press[(
int)KeyCode::End] ||
473 press[(
int)KeyCode::Home] ||
474 press[(
int)KeyCode::Left] ||
475 press[(
int)KeyCode::Up] ||
476 press[(
int)KeyCode::Right] ||
477 press[(
int)KeyCode::Down] ||
478 press[(
int)KeyCode::Insert] ||
479 press[(
int)KeyCode::Delete] ||
481 press[(
int)KeyCode::Minus] ||
482 press[ (
int)KeyCode::Yen ] ||
483 press[ (
int)KeyCode::PrevTrack ] ||
484 press[(
int)KeyCode::Period] ||
485 press[(
int)KeyCode::Slash] ||
486 press[(
int)KeyCode::LAlt] ||
487 press[(
int)KeyCode::RAlt] ||
488 press[(
int)KeyCode::Scroll] ||
489 press[(
int)KeyCode::Semicolon] ||
490 press[(
int)KeyCode::Colon] ||
491 press[(
int)KeyCode::LBracket] ||
492 press[(
int)KeyCode::RBracket] ||
493 press[(
int)KeyCode::At] ||
494 press[(
int)KeyCode::Backslash] ||
495 press[(
int)KeyCode::Comma] ||
496 press[(
int)KeyCode::Capslock] ||
497 press[(
int)KeyCode::Pause] ||
499 press[(
int)KeyCode::Numpad0] ||
500 press[(
int)KeyCode::Numpad1] ||
501 press[(
int)KeyCode::Numpad2] ||
502 press[(
int)KeyCode::Numpad3] ||
503 press[(
int)KeyCode::Numpad4] ||
504 press[(
int)KeyCode::Numpad5] ||
505 press[(
int)KeyCode::Numpad6] ||
506 press[(
int)KeyCode::Numpad7] ||
507 press[(
int)KeyCode::Numpad8] ||
508 press[(
int)KeyCode::Numpad9] ||
509 press[(
int)KeyCode::Multiply] ||
510 press[(
int)KeyCode::Add] ||
511 press[(
int)KeyCode::Subtract] ||
512 press[(
int)KeyCode::Decimal] ||
513 press[(
int)KeyCode::Divide] ||
514 press[(
int)KeyCode::NUMPADEnter] ||
516 press[(
int)KeyCode::F1] ||
517 press[(
int)KeyCode::F2] ||
518 press[(
int)KeyCode::F3] ||
519 press[(
int)KeyCode::F4] ||
520 press[(
int)KeyCode::F5] ||
521 press[(
int)KeyCode::F6] ||
522 press[(
int)KeyCode::F7] ||
523 press[(
int)KeyCode::F8] ||
524 press[(
int)KeyCode::F9] ||
525 press[(
int)KeyCode::F10] ||
526 press[(
int)KeyCode::F11] ||
527 press[(
int)KeyCode::F12] ||
529 press[(
int)KeyCode::A] ||
530 press[(
int)KeyCode::B] ||
531 press[(
int)KeyCode::C] ||
532 press[(
int)KeyCode::D] ||
533 press[(
int)KeyCode::E] ||
534 press[(
int)KeyCode::F] ||
535 press[(
int)KeyCode::G] ||
536 press[(
int)KeyCode::H] ||
537 press[(
int)KeyCode::I] ||
538 press[(
int)KeyCode::J] ||
539 press[(
int)KeyCode::K] ||
540 press[(
int)KeyCode::L] ||
541 press[(
int)KeyCode::M] ||
542 press[(
int)KeyCode::N] ||
543 press[(
int)KeyCode::O] ||
544 press[(
int)KeyCode::P] ||
545 press[(
int)KeyCode::Q] ||
546 press[(
int)KeyCode::R] ||
547 press[(
int)KeyCode::S] ||
548 press[(
int)KeyCode::T] ||
549 press[(
int)KeyCode::U] ||
550 press[(
int)KeyCode::V] ||
551 press[(
int)KeyCode::W] ||
552 press[(
int)KeyCode::X] ||
553 press[(
int)KeyCode::Y] ||
554 press[(
int)KeyCode::Z] ||
555 press[(
int)KeyCode::_0] ||
556 press[(
int)KeyCode::_1] ||
557 press[(
int)KeyCode::_2] ||
558 press[(
int)KeyCode::_3] ||
559 press[(
int)KeyCode::_4] ||
560 press[(
int)KeyCode::_5] ||
561 press[(
int)KeyCode::_6] ||
562 press[(
int)KeyCode::_7] ||
563 press[(
int)KeyCode::_8] ||
564 press[(
int)KeyCode::_9] );
void Reset()
状態のリセット.
Definition: Keyboard.h:125
void Update()
状態の更新.
Definition: Keyboard.h:234
void Reset()
キーのリセット.
Definition: Key.h:17
void Update(int 押下フラグ)
押下状態の更新.
Definition: Key.h:26
static bool HoldAnyKey()
いずれかのキーが押されているか取得.
Definition: Keyboard.h:453