(ns advent.steam) (def has-steam? (try (import '[com.codedisaster.steamworks SteamUserStats SteamUserStatsCallback SteamAPI]) true (catch Exception e false))) (defn init [] (when has-steam? (eval `(SteamAPI/init)))) (defn update [] (when (and has-steam? (eval `(SteamAPI/isSteamRunning))) (eval `(SteamAPI/runCallbacks)))) (defn set-achievement [achievement] (when has-steam? (eval `(.setAchievement (SteamUserStats. nil) ~achievement))))