48 lines
3.5 KiB
Clojure
48 lines
3.5 KiB
Clojure
(ns advent.core
|
|
(:require [play-clj.core :refer :all]
|
|
[play-clj.ui :refer :all]
|
|
[play-clj.utils :refer :all]
|
|
[play-clj.g2d :refer :all]
|
|
[advent.utils :as utils]
|
|
[advent.screens.scene :as scene]
|
|
[advent.screens.dialogue :as dialogue]
|
|
[clojure.tools.logging :as log]
|
|
[advent.screens.title :as title]
|
|
[advent.screens.splash :as splash]
|
|
[advent.screens.credits :as credits]
|
|
[advent.screens.inventory :as inventory]
|
|
[advent.screens.safe :as safe]
|
|
[advent.screens.fade :as fade]
|
|
[advent.steam :as steam]
|
|
[clojure.pprint]
|
|
[advent.pathfind])
|
|
(:import [com.badlogic.gdx.graphics Pixmap Pixmap$Filter Texture Texture$TextureFilter]
|
|
[com.badlogic.gdx.graphics.g2d TextureRegion]
|
|
[com.badlogic.gdx Gdx Application]
|
|
[java.io FileOutputStream File PrintStream])
|
|
)
|
|
|
|
(defonce am (asset-manager))
|
|
|
|
(set-asset-manager! am)
|
|
|
|
(defgame advent
|
|
:on-create
|
|
(fn [this]
|
|
(log/log-capture! *ns* :warn :error)
|
|
(log/info "Starting game on version v" (advent.version/version))
|
|
(steam/init)
|
|
(reset! utils/selected-save {:name "Autosave", :id "autosave", :screenshot "saves/screenshot-autosave.png", :state {:y 74.0, :active? true, :coaxed-sheep? true, :seen-bloodclot? true, :seen-frankie? true, :plaques-read #{:sword :shovel}, :knows-about-stash? true, :safe-listen-count 2, :convinced-wizard? true, :time :night, :broke-lock? true, :wool-count 2, :opened-bars? true, :opened-crack? true, :inventory [:flask-water-ash :money :camera :alarm-clock :charcoal :note-1 :flies :spear :crowbar :key :sword :kiss :cat-toy :tune :flask-1-strength :medal :trophy :slingshot], :has-met-gandarf? true, :seen-intro? true, :has-seen-love? true, :has-dropped-coin? true, :wizard-left? false, :dropped-ball? true, :wants-monocle? true, :clues #{:name}, :bubba-gone? false, :hud-active? nil, :allowed-to-keep-teddy? true, :warden-sleeping? true, :current-riddle :done, :owl-tried-strength? true, :opened-blinds? true, :x 239.3914592899382, :warden-fast-asleep? true, :last-room :cat-tree, :wants-toy true, :bent-bars? true, :knows-owl-trouble? true, :chest-contents [], :mints-eaten 0, :object nil, :talked-to-owl? true, :obtained-items #{:balloon :money :flask-2 :tune :flask-1-with-cream-of-mushroom :key :flask-water-ash :slingshot :teddy :flies :recipe :mushrooms :rope :flask-1-with-milk :kiss :wool :portrait :slobber :spear :medal :sword :frog-legs :flask-1 :flask-1-strength :dream-sword :mandrake :walkie-talkies :shovel :ash :cat-toy :grass :camera :sack-lunch :stick :charcoal :ladder :carrot :trophy :monocle :alarm-clock :crowbar :note-1 :flask-1-slobber :glass-eye :flask-water :ball-n-chain}}, :blurb "Autosave"})
|
|
(set-screen! @(resolve 'advent.core/advent) scene/scene #_scene/demo scene/hud dialogue/talking-screen dialogue/choice-screen dialogue/toast-screen inventory/inventory-screen safe/safe-screen fade/fade-screen
|
|
)))
|
|
|
|
(defn reload []
|
|
(on-gl (set-screen! advent title/title-screen)))
|
|
|
|
(set-screen-wrapper! (fn [screen screen-fn]
|
|
(try (screen-fn)
|
|
(catch Exception e
|
|
(.log Gdx/app "ERROR" (with-out-str (.printStackTrace e)))
|
|
(log/error e (with-out-str (.printStackTrace e)))
|
|
(set-screen! advent title/title-screen)))))
|