Java-Gaming.org Hi !
Featured games (83)
games approved by the League of Dukes
Games in Showcase (517)
Games in Android Showcase (123)
games submitted by our members
Games in WIP (577)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Absolute Beginner's Guide - using PulpCore with BlueJ  (Read 7437 times)
0 Members and 1 Guest are viewing this topic.
Offline stemkoski

Junior Newbie





« Posted 2011-06-29 20:44:01 »

Although tools such as NetBeans and Eclipse are quite powerful, this short guide will hopefully help increase the audience of PulpCore users to those who use BlueJ (from http://bluej.org: "an integrated Java environment specifically designed for introductory teaching") and wish to avoid ANT scripts.

Setting up PulpCore in BlueJ

  • Download the pulpcore zip file from the "downloads" section, and extract all files.
  • In BlueJ, from the menu bar choose: "Tools" --> "Preferences..." , to bring up the "BlueJ: Preferences" window. In this window, click the "Libraries" tab.
  • Click the "Add" button, and a new window will appears ("Select directory or jar/zip file").  In this window, find the directory where you extracted the pulpcore files. Within this directory, inside the "build" directory, select the file "pulpcore-applet-release.jar", and click the "Open" button. The "Select..." window will close.
  • Back in the User Libraries list in the "BlueJ: Preferences" window, there will be a new entry; in the "Location" column you will see the path to the "pulpcore-applet-release.jar" file, and in the "Status" column you will see the phrase "Not Loaded".
  • In the preferences window, click "OK". A window will pop up with a helpful message ("These changes you have made..."; click "OK".
  • Quit the BlueJ program, and then restart BlueJ.  (This enables the new JAR library to load.)

(Yet Another) Hello World program for PulpCore

First, credit where credit is due: This example is amalgamated form the tutorials from http://www.alexjeffery.org (old code updated to work with PulpCore 0.11), and http://cloningtheclassics.com/

  • In the BlueJ main window, click the "New Class..." button.  Name the class PulpyDemo.
  • In the source code window that appears, delete all the preset code, and replace it with the following code:

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  
32  
33  
34  
35  
36  
37  
38  
39  
40  
41  
42  
43  
44  
45  
46  
47  
48  
49  
50  
51  
import pulpcore.Stage; 
import pulpcore.scene.Scene2D;
import pulpcore.image.Colors;
import pulpcore.image.CoreFont;
import pulpcore.image.CoreGraphics;
import pulpcore.image.CoreImage;
import pulpcore.sprite.Label;
import pulpcore.sprite.Sprite;
import pulpcore.sprite.FilledSprite;
import pulpcore.sprite.ImageSprite;

public class PulpyDemo extends Scene2D
{
    FilledSprite background;
    Label helloLabel;
    ImageSprite logoImage;

    public void load()
    {
        // Calculate coordinates of applet center
        int centerX = Stage.getWidth() / 2;
        int centerY = Stage.getHeight() / 2;

        // Create a background
        background = new FilledSprite(Colors.YELLOW);
        add(background);

        // Build a new label
        helloLabel = new Label(CoreFont.getSystemFont(), "Hello World!", centerX, 40);

        // Center the label horizontally and vertically
        helloLabel.setAnchor(0.5, 0.5);

        // Add the label to the scene
        add(helloLabel);

        // Load an image
        logoImage = new ImageSprite(CoreImage.load("logo.png"), centerX, centerY);

        // Center the image
        logoImage.setAnchor(ImageSprite.CENTER);

        // Add the image to the screen
        add(logoImage);
    }

    public void update(int elapsedTime)
    {
        // this method has been intentionally left blank
    }
}


  • Compile the code.

To learn more about the code itself (classes, methods, etc.), see http://www.java-gaming.org/topics/pulpcore-tutorial-1-stages-scenes-sprites-and-hello-world/24461/view.html -- my goal in this tutorial is simply to get something up and running.

Running the applet

Because PulpCore uses a JavaScript file to load the applet, we will not use BlueJ's built-in AppletViewer.  Instead, we will set up the necessary files manually.

  • First, make a copy of the "pulpcore-applet-release.jar", rename it to "myArchive.jar", and place it in your BlueJ project directory.
    Open the JAR file using a program such as 7zip or WinRAR. Copy the "PulpyDemo.class" file from your BlueJ project directory into the JAR file. Close the JAR file.
  • Create a new ZIP file (again, using either 7zip or WinRAR, for example) called "myAssets.zip".  This is where all program assets
    (images, sounds, etc.) should be placed.  For the demo program above to work correctly, this ZIP file needs to contain an image file named "logo.png".
  • Copy the files "splash.gif" and "pulpcore.js" into your directory. (These are also located in the pulpcore zip file.)
  • Finally, open your favorite text editing program (such as Notepad++), and create a file called "index.html"; this will be the webpage that loads the applet.  Use the following code:

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  
32  
33  
34  
<html> 
<head>
<title>PulpCore Demo</title>
<body>

<div id="game">
<script type="text/javascript">
<!--
pulpcore_width = 450;
pulpcore_height = 250;
pulpcore_archive = "myArchive.jar";
pulpcore_assets = "myAssets.zip";
pulpcore_scene = "PulpyDemo";
pulpcore_splash = "splash.gif";
//-->
</script>
<br />
<script type="text/javascript" src="pulpcore.js"></script>
<br />
<noscript>
<p>To play, enable JavaScript from the Options or Preferences menu.</
p>
</noscript>
</div>

<div id="source">
<center>
    Created with <a href="http://www.interactivepulp.com/
pulpcore/"
>PulpCore</a>
</center>
</div>

</body>
</html>


  • Provided the files myArchive.jar, myAssets.zip, splash.gif, pulpcore.js, and index.html are all in the same directory, the applet
    should be ready to run. Open "index.html" in a web browser (FireFox is highly recommended), and enjoy!

A working version of this demo applet is located at http://www.adelphi.edu/~stemkoski/pulpcore/index-tutorial.html

Offline stemkoski

Junior Newbie





« Reply #1 - Posted 2011-07-06 02:22:16 »

For those who prefer an advanced Java IDE, the PulpCore wiki also includes setup guides for NetBeans and Eclipse:

http://code.google.com/p/pulpcore/wiki/NetBeans

http://code.google.com/p/pulpcore/wiki/Eclipse
Offline ReBirth
« Reply #2 - Posted 2011-07-06 12:56:29 »

"In the BlueJ main window, click the "New Class..." button.  Name the class PulpyCore. "

I think it should be named "PulpyDemo".

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline stemkoski

Junior Newbie





« Reply #3 - Posted 2011-07-07 01:38:41 »

Thank you, ReBirth, you are absolutely correct. I have edited the post.
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

TehJavaDev (38 views)
2014-10-27 03:28:38

TehJavaDev (29 views)
2014-10-27 03:27:51

DarkCart (43 views)
2014-10-26 19:37:11

Luminem (24 views)
2014-10-26 10:17:50

Luminem (29 views)
2014-10-26 10:14:04

theagentd (35 views)
2014-10-25 15:46:29

Longarmx (63 views)
2014-10-17 03:59:02

Norakomi (61 views)
2014-10-16 15:22:06

Norakomi (50 views)
2014-10-16 15:20:20

lcass (46 views)
2014-10-15 16:18:58
Understanding relations between setOrigin, setScale and setPosition in libGdx
by mbabuskov
2014-10-09 22:35:00

Definite guide to supporting multiple device resolutions on Android (2014)
by mbabuskov
2014-10-02 22:36:02

List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!