-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.php
35 lines (25 loc) · 1.21 KB
/
index.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
require __DIR__ . '/vendor/autoload.php';
$allegro = new \AllegroPHP\Allegro\Allegro();
$init = $allegro->al_install_system($allegro->al_get_allegro_version(), function (){});
$display = $allegro->al_create_display(500, 500);
$queue = $allegro->al_create_event_queue();
$timer = $allegro->al_create_timer(1.0 / 60);
$event_queue = $allegro->al_create_event_queue();
$allegro->al_install_keyboard();
$allegro->al_install_joystick();
$allegro->al_install_mouse();
$allegro->al_register_event_source($event_queue, $allegro->al_get_keyboard_event_source());
$allegro->al_register_event_source($event_queue, $allegro->al_get_joystick_event_source());
$allegro->al_register_event_source($event_queue, $allegro->al_get_mouse_event_source());
$allegro->al_register_event_source($event_queue, $allegro->al_get_display_event_source($display));
$allegro->al_register_event_source($event_queue, $allegro->al_get_timer_event_source($timer));
$running = true;
$event = $allegro->new('ALLEGRO_EVENT');
while ($running){
$allegro->al_wait_for_event($event_queue, \FFI::addr($event));
if ($event->type === \AllegroPHP\Allegro\Event\Type::DISPLAY_CLOSE) {
$running = false;
}
}
$allegro->al_destroy_display($display);