getTask(); if($ftask instanceof PluginTask and $ftask->getOwner() !== null){ $plugin = $ftask->getOwner()->getDescription()->getFullName(); }elseif($task->timingName !== null){ $plugin = "Scheduler"; }else{ $plugin = "Unknown"; } $taskname = $task->getTaskName(); $name = "Task: " . $plugin . " Runnable: " . $taskname; if($period > 0){ $name .= "(interval:" . $period . ")"; }else{ $name .= "(Single)"; } if(!isset(self::$pluginTaskTimingMap[$name])){ self::$pluginTaskTimingMap[$name] = new TimingsHandler($name, self::$schedulerSyncTimer); } return self::$pluginTaskTimingMap[$name]; } /** * @param Entity $entity * * @return TimingsHandler */ public static function getEntityTimings(Entity $entity){ $entityType = (new \ReflectionClass($entity))->getShortName(); if(!isset(self::$entityTypeTimingMap[$entityType])){ self::$entityTypeTimingMap[$entityType] = new TimingsHandler("** tickEntity - " . $entityType, self::$activatedEntityTimer); } return self::$entityTypeTimingMap[$entityType]; } /** * @param Tile $tile * * @return TimingsHandler */ public static function getTileEntityTimings(Tile $tile){ $tileType = (new \ReflectionClass($tile))->getShortName(); if(!isset(self::$tileEntityTypeTimingMap[$tileType])){ self::$tileEntityTypeTimingMap[$tileType] = new TimingsHandler("** tickTileEntity - " . $tileType, self::$tickTileEntityTimer); } return self::$tileEntityTypeTimingMap[$tileType]; } }