Testing out JmonkeyEngine to make a game in Scala with Akka Actors within a pure FP layer
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
package wow.doge.mygame.game.subsystems.level
import com.jme3.bullet.control.RigidBodyControl import com.jme3.light.AmbientLight import com.jme3.light.DirectionalLight import com.jme3.scene.Spatial import com.jme3.bullet.PhysicsSpace import cats.effect.concurrent.Ref import monix.bio.Task import com.jme3.scene.Node import wow.doge.mygame.implicits._
class Level( model: Spatial, physicsControl: RigidBodyControl, ambientLight: AmbientLight, directionalLight: DirectionalLight ) { def addToGame(rootNode: Ref[Task, Node], physicsSpace: PhysicsSpace) = { for { _ <- rootNode.update(_ :+ model) _ <- rootNode.update { r => r.addLight(ambientLight) r } _ <- rootNode.update { r => r.addLight(directionalLight) r } _ <- Task(physicsSpace += model) _ <- Task(physicsSpace += physicsControl) } yield () } }
|