1: <?php
2: 3: 4: 5: 6: 7: 8: 9: 10:
11:
12: namespace ManiaLive\Data;
13:
14: class Event extends \ManiaLive\Event\Event
15: {
16: const ON_PLAYER_NEW_BEST_TIME = 1;
17: const ON_PLAYER_NEW_RANK = 2;
18: const ON_PLAYER_NEW_BEST_SCORE = 4;
19: const ON_PLAYER_CHANGE_SIDE = 8;
20: const ON_PLAYER_FINISH_LAP = 16;
21:
22: protected $params;
23:
24: function __construct($onWhat)
25: {
26: parent::__construct($onWhat);
27: $params = func_get_args();
28: array_shift($params);
29: $this->params = $params;
30: }
31:
32: function fireDo($listener)
33: {
34: $p = $this->params;
35:
36: switch($this->onWhat)
37: {
38: case self::ON_PLAYER_NEW_BEST_TIME: $listener->onPlayerNewBestTime($p[0], $p[1], $p[2]); break;
39: case self::ON_PLAYER_NEW_RANK: $listener->onPlayerNewRank($p[0], $p[1], $p[2]); break;
40: case self::ON_PLAYER_NEW_BEST_SCORE: $listener->onPlayerNewBestScore($p[0], $p[1], $p[2]); break;
41: case self::ON_PLAYER_CHANGE_SIDE: $listener->onPlayerChangeSide($p[0], $p[1]); break;
42: case self::ON_PLAYER_FINISH_LAP: $listener->onPlayerFinishLap($p[0], $p[1], $p[2], $p[3]); break;
43: }
44: }
45: }
46: ?>