Inheritance: extends Evenement\EventEmitter
Beispiel #1
0
 public function __call($name, $arguments)
 {
     if (in_array($name, Config::$commands)) {
         if ($name === 'takeoff' || $name === 'land') {
             // process callback function
             $callback = count($arguments) === 1 ? $arguments[0] : function () {
             };
             $eventName = $name === 'takeoff' ? 'hovering' : 'landed';
             $this->once($eventName, $callback);
             $this->udpControl->emit($name);
         } else {
             if ($name === 'stop' || $name === 'ftrim' || $name === 'flip') {
                 $this->udpControl->emit($name);
                 // Control commands
             } else {
                 if (count($arguments) > 1) {
                     new \Exception('There are too many arguments');
                 }
                 $this->udpControl->emit($name, array($arguments[0]));
             }
         }
     } else {
         new \Exception('Invalid function');
     }
 }