void ObjectEventClick(BotEngine sender, EventObjectClickArgs e) { lock (_db) { // store the number of clicks on this object in the storage provider. ModelClickStatistics stat; var query = from ModelClickStatistics p in _db where p.ModelId == e.Model.Id select p; if (query.Count() == 0) { stat = new ModelClickStatistics() { Clicks = 0, ModelId = e.Model.Id } } ; else { stat = query.Single(); } lock (this) { stat.Clicks++; _db.Store(stat); _db.Commit(); sender.Console.WriteLine(string.Format("object {0} with id {1} clicked by {2}. Total clicks {3}.", e.Model.ModelName, e.Model.Id, e.Avatar.Name, stat.Clicks)); } } }
/// <summary> /// Handles the object event click. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The e.</param> void HandleObjectEventClick(BotEngine sender, EventObjectClickArgs e) { // moved to plugin statsbot. }