public static function migrateEvents($v1GameId, $v2GameId, $maps) { //round up all v1 events into groups by type and by object $eGroupings = new stdClass(); $eGroupings->plaques = array(); $eGroupings->dialogScripts = array(); $events = migration_dbconnection::queryArray("SELECT * FROM player_state_changes WHERE game_id = '{$v1GameId}'", "v1"); $q = 0; for ($i = 0; $i < count($events); $i++) { if ($maps->plaques[$events[$i]->event_detail]) { $typeGroup =& $eGroupings->plaques; } if ($maps->scripts[$events[$i]->event_detail]) { $typeGroup =& $eGroupings->dialogScripts; } if (!$typeGroup[$events[$i]->event_detail]) { $typeGroup[$events[$i]->event_detail] = array(); } $typeGroup[$events[$i]->event_detail][] = $events[$i]; } foreach ($eGroupings->plaques as $plaqueId => $eventsList) { $event_package_id = migration::migrateEventsListIntoPackage($v2GameId, $eventsList, $maps); migration_dbconnection::query("UPDATE plaques SET event_package_id = '{$event_package_id}' WHERE plaque_id = '{$maps->plaques[$plaqueId]}'", "v2"); } foreach ($eGroupings->dialogScripts as $scriptId => $eventsList) { $event_package_id = migration::migrateEventsListIntoPackage($v2GameId, $eventsList, $maps); migration_dbconnection::query("UPDATE dialog_scripts SET event_package_id = '{$event_package_id}' WHERE dialog_script_id = '{$maps->scripts[$scriptId]}'", "v2"); } }