Project can be launched through sbt run, project is now fully translated

This commit is contained in:
Yohann D'ANELLO 2020-04-05 01:15:45 +02:00
parent 8b745c068a
commit 48eb15d57e
8 changed files with 84 additions and 11 deletions

3
.gitignore vendored
View File

@ -19,6 +19,9 @@ img.png
image.png image.png
/maps/ /maps/
/assets/ /assets/
lib/
out/ out/
project/
target/
TheGame.jar TheGame.jar

77
build.sbt Normal file
View File

@ -0,0 +1,77 @@
// The simplest possible sbt build file is just one line:
scalaVersion := "2.13.1"
// That is, to create a valid sbt build, all you've got to do is define the
// version of Scala you'd like your project to use.
// ============================================================================
// Lines like the above defining `scalaVersion` are called "settings". Settings
// are key/value pairs. In the case of `scalaVersion`, the key is "scalaVersion"
// and the value is "2.13.1"
// It's possible to define many kinds of settings, such as:
name := "the-game"
organization := "fr.ynerant"
version := "1.0"
// Note, it's not required for you to define these three settings. These are
// mostly only necessary if you intend to publish your library's binaries on a
// place like Sonatype or Bintray.
// Want to use a published library in your project?
// You can define other libraries as dependencies in your build like this:
// https://mvnrepository.com/artifact/net.liftweb/lift-json
libraryDependencies += "net.liftweb" %% "lift-json" % "3.4.1"
// Here, `libraryDependencies` is a set of dependencies, and by using `+=`,
// we're adding the cats dependency to the set of dependencies that sbt will go
// and fetch when it starts up.
// Now, in any Scala file, you can import classes, objects, etc., from cats with
// a regular import.
// TIP: To find the "dependency" that you need to add to the
// `libraryDependencies` set, which in the above example looks like this:
// "org.typelevel" %% "cats-core" % "2.0.0"
// You can use Scaladex, an index of all known published Scala libraries. There,
// after you find the library you want, you can just copy/paste the dependency
// information that you need into your build file. For example, on the
// typelevel/cats Scaladex page,
// https://index.scala-lang.org/typelevel/cats, you can copy/paste the sbt
// dependency from the sbt box on the right-hand side of the screen.
// IMPORTANT NOTE: while build files look _kind of_ like regular Scala, it's
// important to note that syntax in *.sbt files doesn't always behave like
// regular Scala. For example, notice in this build file that it's not required
// to put our settings into an enclosing object or class. Always remember that
// sbt is a bit different, semantically, than vanilla Scala.
// ============================================================================
// Most moderately interesting Scala projects don't make use of the very simple
// build file style (called "bare style") used in this build.sbt file. Most
// intermediate Scala projects make use of so-called "multi-project" builds. A
// multi-project build makes it possible to have different folders which sbt can
// be configured differently for. That is, you may wish to have different
// dependencies or different testing frameworks defined for different parts of
// your codebase. Multi-project builds make this possible.
// Here's a quick glimpse of what a multi-project build looks like for this
// build, with only one "subproject" defined, called `root`:
// lazy val root = (project in file(".")).
// settings(
// inThisBuild(List(
// organization := "ch.epfl.scala",
// scalaVersion := "2.13.1"
// )),
// name := "hello-world"
// )
// To learn more about multi-project builds, head over to the official sbt
// documentation at http://www.scala-sbt.org/documentation.html

Binary file not shown.

Binary file not shown.

View File

@ -1,3 +0,0 @@
Manifest-Version: 1.0
Main-Class: fr.ynerant.leveleditor.client.main.Main

View File

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Configuration package="log4j.test" status="info">
<Loggers>
<Root level="info">
</Root>
</Loggers>
</Configuration>

View File

@ -38,7 +38,9 @@ object SpriteRegister {
val name = je.getName val name = je.getName
if (name.startsWith("assets/")) { if (name.startsWith("assets/")) {
val f = new File(name) val f = new File(name)
if (name.endsWith("/")) if (!f.mkdirs && !f.isDirectory) throw new IOException("Unable to make dir: " + f) if (name.endsWith("/")) {
if (!f.mkdirs && !f.isDirectory) throw new IOException("Unable to make dir: " + f)
}
else if (!f.isFile) Files.copy(jar.getInputStream(je), Paths.get(f.toURI)) else if (!f.isFile) Files.copy(jar.getInputStream(je), Paths.get(f.toURI))
} }
} }

View File

@ -149,6 +149,7 @@ class GameFrame(val map: RawMap) extends JFrame("Jeu") {
val y = event.getY / 32 val y = event.getY / 32
val tower = if (basicTower.isSelected) new BasicTower(x, y) val tower = if (basicTower.isSelected) new BasicTower(x, y)
else if (nullTower.isSelected) new NullTower(x, y) else if (nullTower.isSelected) new NullTower(x, y)
else if (autoTower.isSelected) new AutoTower(x, y) else if (autoTower.isSelected) new AutoTower(x, y)
else null else null
if (tower == null || tower.getPrice > reward) return if (tower == null || tower.getPrice > reward) return