Code Search for Developers
 
 
  

ActionQuadTest.java from Riot in Emerald city at Krugle


Show ActionQuadTest.java syntax highlighted

/*
 * Copyright (C) 2001-2005 Pleasant nightmare studio
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 *
 * See the GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 */
package skunkworks;

import com.jme.input.InputHandler;
import com.jme.input.KeyBindingManager;
import static com.jme.input.KeyInput.KEY_D;
import static com.jme.input.KeyInput.KEY_H;
import com.jme.input.action.InputActionEvent;
import com.jme.input.action.KeyInputAction;
import com.jme.math.Vector3f;
import com.jme.renderer.ColorRGBA;
import com.jme.scene.Node;
import com.jme.scene.Spatial;
import com.jme.scene.shape.Sphere;
import com.jme.scene.state.MaterialState;
import org.pleasantnightmare.riotinecity.ConsoleGame;
import org.pleasantnightmare.riotinecity.spatials.ActionQuad;

/**
 * @author deus
 * @version 1.0
 * @since Mar 27, 2007 10:34:29 PM
 */
public class ActionQuadTest extends ConsoleGame {
    private ActionQuad actionQuad;
    private Node objectOfInterest;
    private static final String ACTION_HIGHLIGHT = "highlight";
    private static final String ACTION_SETDEFAULT = "default";
    private boolean isDefault = false;
    private boolean isHighlighted = false;

    protected void simpleInitGame() {
        sceneRoot.attachChild(testBall());

        actionQuad = new ActionQuad("action-quad");
        actionQuad.setLocalTranslation(centerOfScreen());
        hudRoot.attachChild(actionQuad);
        inputController();
    }

    private Spatial testBall() {
        Sphere sferica = new Sphere("sphery", 10, 10, 3.0f);
        MaterialState ms = display.getRenderer().createMaterialState();
        ms.setAmbient(new ColorRGBA(0.3f, 0.0f, 0.0f, 1.0f));
        ms.setDiffuse(new ColorRGBA(1.0f, 0.0f, 0.0f, 1.0f));
        ms.setEnabled(true);
        sferica.setRenderState(ms);
        sferica.updateRenderState();
        objectOfInterest = new Node("objectOfInterest");
        objectOfInterest.attachChild(sferica);

        return sferica;
    }

    private void inputController() {
        KeyBindingManager.getKeyBindingManager().add(ACTION_SETDEFAULT, new int[]{KEY_D});
        KeyBindingManager.getKeyBindingManager().add(ACTION_HIGHLIGHT, new int[]{KEY_H});

        InputHandler input = new InputHandler();
        addHandler(input);
        input.addAction(new KeyInputAction() {
            public void performAction(InputActionEvent evt) {
                isDefault = !isDefault;

                if (isHighlighted)
                    return;
                if (isDefault)
                    actionQuad.highlightDefault();
                else
                    actionQuad.unhighlight();
            }
        }, ACTION_SETDEFAULT, false);

        input.addAction(new KeyInputAction() {
            public void performAction(InputActionEvent evt) {
                isHighlighted = !isHighlighted;
                if (isHighlighted)
                    actionQuad.highlight();
                else if (isDefault)
                    actionQuad.highlightDefault();
                else
                    actionQuad.unhighlight();
            }
        }, ACTION_HIGHLIGHT, false);
    }

    private Vector3f centerOfScreen() {
        return new Vector3f(display.getWidth() / 2, display.getHeight() / 2, 0);
    }

    public static void main(String[] args) {
        ActionQuadTest g = new ActionQuadTest();
        g.start();
    }
}




See more files for this project here

Riot in Emerald city

Cyberpunk third-person 2100. noir RPG thriller using JMonkey. Its going to be mix between Bloodnet, Neuromancer, DeusEx in gameplay, with pieces of Uplink and many other mini-games for dealing with variety of tasks (lockpicking, hacking...)

Project homepage: http://sourceforge.net/projects/riot-in-ecity
Programming language(s): Java,XML
License: other

  computer/
    NetworkingTest.java
    ShellTest.java
    StorageBuilderTest.java
    StorageParserTest.java
    UserBuilderTest.java
  coned/
    ConceptFrameTest.java
    DeserializerTest.java
    SerializerTest.java
    SerializingTestsCommons.java
    SimpleWrite.java
  juryrig/
    BombEntity.java
    Digipad.java
    Explosive.java
    MakingOfProximityBomb.java
    ShortrangeUltrasonicRadar.java
  room/
    OurGameRoomDoors.java
  ActionMenuTest.java
  ActionMenuTestGame.java
  ActionQuadTest.java
  ApartmentBuilderTest.java
  ArgSplit.java
  AtmDigipadTest.java
  AtmTest.java
  BoundaryBoxViewport.java
  CamerasInRoomSimpleGame.java
  ColladaAnimation.java
  ComputerTest.java
  ConsoleGameTest.java
  DummyAction.java
  InputHandling.java
  InteractionTest.java
  InventoryTest.java
  Md5Animation.java
  ModelLoading3ds.java
  ScreenTest.java
  SkunkworkUtils.java
  SquareRoomTest.java
  TelescreenTest.java
  TestColladaLoading.java
  TexturedBox.java
  ZOrderTest.java