mirror of
https://github.com/Dejvino/roadtrip
synced 2024-12-22 19:58:49 +00:00
UI: Main Menu prototype
This commit is contained in:
parent
3c104a3d38
commit
8e6e4cb299
@ -68,6 +68,9 @@ public class RoadTrip extends SimpleApplication implements ActionListener {
|
|||||||
float inputTurning;
|
float inputTurning;
|
||||||
float inputAccel;
|
float inputAccel;
|
||||||
|
|
||||||
|
BitmapText uiText;
|
||||||
|
Node menuBook;
|
||||||
|
|
||||||
private PhysicsSpace getPhysicsSpace(){
|
private PhysicsSpace getPhysicsSpace(){
|
||||||
return bulletAppState.getPhysicsSpace();
|
return bulletAppState.getPhysicsSpace();
|
||||||
}
|
}
|
||||||
@ -135,6 +138,28 @@ public class RoadTrip extends SimpleApplication implements ActionListener {
|
|||||||
addTarget();
|
addTarget();
|
||||||
addCompass();
|
addCompass();
|
||||||
|
|
||||||
|
menuBook = new Node("menu");
|
||||||
|
Geometry book = new Geometry("book", new Box(8, 8, 1));
|
||||||
|
Material mat = new Material(getAssetManager(), "Common/MatDefs/Misc/Unshaded.j3md");
|
||||||
|
mat.setColor("Color", ColorRGBA.Brown);
|
||||||
|
book.setMaterial(mat);
|
||||||
|
book.setLocalTranslation(0f, 0f, -1.1f);
|
||||||
|
menuBook.attachChild(book);
|
||||||
|
BitmapFont fnt = assetManager.loadFont("Interface/Fonts/Default.fnt");
|
||||||
|
uiText = new BitmapText(fnt, false);
|
||||||
|
uiText.setBox(new Rectangle(-5, 4, 12, 12));
|
||||||
|
uiText.setAlignment(BitmapFont.Align.Left);
|
||||||
|
uiText.setQueueBucket(RenderQueue.Bucket.Transparent);
|
||||||
|
uiText.setSize(1.0f);
|
||||||
|
uiText.setText("~~~~~~~~~~~~~~~~~~~~\n Road Trip \n~~~~~~~~~~~~~~~~~~~~\n"
|
||||||
|
+ " New Game \n"
|
||||||
|
+ "$Load Game$\n"
|
||||||
|
+ " Settings \n"
|
||||||
|
+ " Credits \n"
|
||||||
|
+ " Exit\n");
|
||||||
|
menuBook.attachChild(uiText);
|
||||||
|
rootNode.attachChild(menuBook);
|
||||||
|
|
||||||
chaseCam = new ChaseCamera(cam, player.node, inputManager);
|
chaseCam = new ChaseCamera(cam, player.node, inputManager);
|
||||||
chaseCam.setDefaultDistance(60f);
|
chaseCam.setDefaultDistance(60f);
|
||||||
chaseCam.setSmoothMotion(true);
|
chaseCam.setSmoothMotion(true);
|
||||||
@ -387,7 +412,7 @@ public class RoadTrip extends SimpleApplication implements ActionListener {
|
|||||||
targetNode.setLocalTranslation(journeyTarget);
|
targetNode.setLocalTranslation(journeyTarget);
|
||||||
}
|
}
|
||||||
|
|
||||||
BitmapText txt;
|
BitmapText targetText;
|
||||||
|
|
||||||
private void addCompass()
|
private void addCompass()
|
||||||
{
|
{
|
||||||
@ -412,14 +437,14 @@ public class RoadTrip extends SimpleApplication implements ActionListener {
|
|||||||
compassNode.attachChild(compassGeomE);
|
compassNode.attachChild(compassGeomE);
|
||||||
|
|
||||||
BitmapFont fnt = assetManager.loadFont("Interface/Fonts/Default.fnt");
|
BitmapFont fnt = assetManager.loadFont("Interface/Fonts/Default.fnt");
|
||||||
txt = new BitmapText(fnt, false);
|
targetText = new BitmapText(fnt, false);
|
||||||
txt.setBox(new Rectangle(-5, 4, 10, 4));
|
targetText.setBox(new Rectangle(-5, 4, 10, 4));
|
||||||
txt.setAlignment(BitmapFont.Align.Center);
|
targetText.setAlignment(BitmapFont.Align.Center);
|
||||||
txt.setQueueBucket(RenderQueue.Bucket.Transparent);
|
targetText.setQueueBucket(RenderQueue.Bucket.Transparent);
|
||||||
txt.setSize( 1.2f );
|
targetText.setSize( 1.2f );
|
||||||
txt.setText("Target");
|
targetText.setText("Target");
|
||||||
txt.setLocalRotation(new Quaternion().fromAngles(0, 3.1415f, 0));
|
targetText.setLocalRotation(new Quaternion().fromAngles(0, 3.1415f, 0));
|
||||||
compassNode.attachChild(txt);
|
compassNode.attachChild(targetText);
|
||||||
|
|
||||||
rootNode.attachChild(compassNode);
|
rootNode.attachChild(compassNode);
|
||||||
}
|
}
|
||||||
@ -472,6 +497,11 @@ public class RoadTrip extends SimpleApplication implements ActionListener {
|
|||||||
listener.setLocation(cam.getLocation());
|
listener.setLocation(cam.getLocation());
|
||||||
listener.setRotation(cam.getRotation());
|
listener.setRotation(cam.getRotation());
|
||||||
|
|
||||||
|
menuBook.setLocalTranslation(cam.getLocation().add(cam.getRotation().mult(Vector3f.UNIT_Z).mult(30.0f)));
|
||||||
|
Quaternion textRot = new Quaternion();
|
||||||
|
textRot.lookAt(new Vector3f(player.node.getWorldTranslation()).subtractLocal(cam.getLocation()).negate(), Vector3f.UNIT_Y);
|
||||||
|
menuBook.setLocalRotation(textRot);
|
||||||
|
|
||||||
if (player.vehicleNode == null) {
|
if (player.vehicleNode == null) {
|
||||||
player.characterControl.setViewDirection(new Quaternion().fromAngleAxis(inputTurning * tpf, Vector3f.UNIT_Y).mult(player.characterControl.getViewDirection()));
|
player.characterControl.setViewDirection(new Quaternion().fromAngleAxis(inputTurning * tpf, Vector3f.UNIT_Y).mult(player.characterControl.getViewDirection()));
|
||||||
player.characterControl.setWalkDirection(new Vector3f(player.characterControl.getViewDirection()).mult(inputAccel * tpf * 1000f));
|
player.characterControl.setWalkDirection(new Vector3f(player.characterControl.getViewDirection()).mult(inputAccel * tpf * 1000f));
|
||||||
@ -489,7 +519,7 @@ public class RoadTrip extends SimpleApplication implements ActionListener {
|
|||||||
targetNode.setLocalTranslation(journeyTarget);
|
targetNode.setLocalTranslation(journeyTarget);
|
||||||
}
|
}
|
||||||
|
|
||||||
txt.setText(((int)targetDistance) + " m");
|
targetText.setText(((int)targetDistance) + " m");
|
||||||
|
|
||||||
compassNode.setLocalTranslation(new Vector3f(player.node.getWorldTranslation()).addLocal(0f, 5f, 0f));
|
compassNode.setLocalTranslation(new Vector3f(player.node.getWorldTranslation()).addLocal(0f, 5f, 0f));
|
||||||
compassNode.setLocalRotation(new Quaternion().fromAngles(0f, (float)Math.atan2(targetDir.x, targetDir.z)/*targetDir.angleBetween(Vector3f.UNIT_Z)*/, 0f));
|
compassNode.setLocalRotation(new Quaternion().fromAngles(0f, (float)Math.atan2(targetDir.x, targetDir.z)/*targetDir.angleBetween(Vector3f.UNIT_Z)*/, 0f));
|
||||||
|
Loading…
Reference in New Issue
Block a user