2015-08-16 1 views
0

Я пытаюсь встроить игру на свой сайт, который я запрограммировал в java. Я не знаю, как взять мой код из eclipse (это то, что мой JDE), и поместить его на мой сайт. Я использую веб-сайт weebly.com. У меня есть несколько незавершенных классов, я хочу загрузить мои незавершенные игры, а также завершить только для того, чтобы показать прогресс. поэтому я прошу вас, как мне получить этот код из eclipse, на мой сайт. Спасибо за помощь, и вот мой код.Как вставить это на свой сайт?

Это мой Main класс:

import java.applet.Applet; 
import java.awt.Graphics; 
import java.awt.Image; 

public class Main extends Applet implements Runnable { 

    private static final long serialVersionUID = 1L; 
    Thread th = new Thread(this); 
    boolean running = true; 
    public int Jweidth = 400, Jheight = 400; 
    Image dbImage; 
    Graphics dbGraphics; 
    Bullet b; 
    Player p; 
    Enemy e, e2, e3, e4, e5, e6, e7, e8; 
    HealthBar hb; 
    NameSign ns; 
    Restart r; 
    private boolean BFire; 

    public void init() { 
     //set window size 
     setSize(Jweidth, Jheight); 
     //calls player class 
     p = new Player(this); 
     //calls healthBar 
     hb = new HealthBar(this, p); 
     //calls enemy class 
     e = new Enemy(this); 
     e2 = new Enemy(42, 0, this); 
     e3 = new Enemy(84, 0, this); 
     e4 = new Enemy(126, 0, this); 
     e5 = new Enemy(0, 42, this); 
     e6 = new Enemy(42, 42, this); 
     e7 = new Enemy(84, 42, this); 
     e8 = new Enemy(126, 42, this); 
     //calls bullet class 
     b = new Bullet(this); 
     //calls nameSign class 
     ns = new NameSign(this); 
     //calls Restart class 
     r = new Restart(this); 
    } 

    public void start() { 
     //starts a new thread 
     th.start(); 
    } 

    public void stop() { 
     running = false; 
    } 

    public void destroy() { 
     running = false; 
    } 

    public void run() { 
     while (running) { 
      setBFire(b.getFire()); 
      //calls update method from player class 
      p.update(this); 
      //calls update method from enemy class 
      e.update(this, p); 
      e2.update(this, p); 
      e3.update(this, p); 
      e4.update(this, p); 
      e5.update(this, p); 
      e6.update(this, p); 
      e7.update(this, p); 
      e8.update(this, p); 
      //calls update method from fire class if BFire is true 
      if (setBFire(true)) { 
       b.update(this, p); 
      } 
      //calls update method from HealthBar class 
      hb.update(this, p); 
      //calls update method from NameSign class 
      ns.update(this); 
      //calls update method from Restart class 
      r.update(this, p); 

      repaint(); 
      //sets Thread to repeat every 17 milliseconds 
      try { 
       Thread.sleep(17); 
      } catch (InterruptedException e) { 
       e.printStackTrace(); 
      } 
     } 
    } 

    //doublebuffer 
    public void update(Graphics g) { 
     dbImage = createImage(Jweidth, Jheight); 
     dbGraphics = dbImage.getGraphics(); 
     paint(dbGraphics); 
     g.drawImage(dbImage, 0, 0, this); 
    } 

    //paint class 
    public void paint(Graphics g) { 
     //calls paint method from player class 
     p.paint(g, this); 
     //calls paint method from enemy class 
     e.paint(g, this); 
     e2.paint(g, this); 
     e3.paint(g, this); 
     e4.paint(g, this); 
     e5.paint(g, this); 
     e6.paint(g, this); 
     e7.paint(g, this); 
     e8.paint(g, this); 
     //calls paint method from bullet class 
     b.paint(g, this); 
     //calls paint method from healthBar class 
     hb.paint(g, this); 
     //calls paint method from nameSign class 
     ns.paint(g, this); 
     //calls paint method from Restart class 
     r.paint(g); 
    } 

    public int getJweidth() { 
     return Jweidth; 
    } 

    public int getJheight() { 
     return Jheight; 
    } 

    //ignore all boolean Bfire methods 
    public boolean isBFire() { 
     return BFire; 
    } 

    public boolean setBFire(boolean bFire) { 
     BFire = bFire; 
     return bFire; 
    } 
} 

Это мой Enemy класс:

import java.awt.*; 
import java.net.URL; 

public class Enemy { 

//Enemy ints 
private int x = 0, y = 0, speed = 2; 
private URL url; 
private Image Enemy; 
//adds image 
public Enemy(Main m){ 
    url = m.getDocumentBase(); 
    Enemy = m.getImage(url, "Enemy.png"); 
} 
public Enemy(int i, int j, Main m) { 
    url = m.getDocumentBase(); 
    Enemy = m.getImage(url, "Enemy.png"); 
    x = i; 
    y = j; 
} 
//same as run method but just for the enemy 
public void update(Main m, Player p){ 
    x += speed; 
    if(x <= 0){ 
     speed = 2; 
     y += 32; 
    } 
    else if(x > m.getJweidth() - 32){ 
     speed = -2; 
     y += 32; 
    } 
    //calls collision method 
    collision(p); 
} 
//enemy player hitbox 
private void collision(Player p) { 
    int Px = p.getX(); 
    int Py = p.getY(); 
    int Pr = p.getRadious(); 

    if(Px - Pr <= x && Px + Pr >= x && Py - Pr <= y && Py + Pr >= y){ 
     p.hit(); 
    } 
} 
//Graphics for enemy 
public void paint(Graphics g, Main m){ 
    g.drawImage(Enemy, x, y, m); 
} 
} 

Это мой Bullet класс (эта игра в стадии разработки и этот класс не работает, но это только незавершенная работа, которую я скоро буду делать)

import java.awt.Graphics; 
import java.awt.Image; 
import java.awt.event.KeyEvent; 
import java.awt.event.KeyListener; 
import java.net.URL; 

public class Enemy { 

    //Enemy ints 
    private int x = 0, y = 0, speed = 2; 
    private URL url; 
    private Image Enemy; 

    //adds image 
    public Enemy(Main m) { 
     url = m.getDocumentBase(); 
     Enemy = m.getImage(url, "Enemy.png"); 
    } 

    public Enemy(int i, int j, Main m) { 
     url = m.getDocumentBase(); 
     Enemy = m.getImage(url, "Enemy.png"); 
     x = i; 
     y = j; 
    } 

    //same as run method but just for the enemy 
    public void update(Main m, Player p) { 
     x += speed; 
     if (x <= 0) { 
      speed = 2; 
      y += 32; 
     } else if (x > m.getJweidth() - 32) { 
      speed = -2; 
      y += 32; 
     } 
     //calls collision method 
     collision(p); 
    } 

    //enemy player hitbox 
    private void collision(Player p) { 
     int Px = p.getX(); 
     int Py = p.getY(); 
     int Pr = p.getRadious(); 

     if (Px - Pr <= x && Px + Pr >= x && Py - Pr <= y && Py + Pr >= y) { 
      p.hit(); 
     } 
    } 

    //Graphics for enemy 
    public void paint(Graphics g, Main m) { 
     g.drawImage(Enemy, x, y, m); 
    } 
} 

Это мой Restart класс (опять-таки не закончена, но по пути)

import java.awt.Graphics; 
import java.awt.event.KeyEvent; 
import java.awt.event.KeyListener; 

public class Restart implements KeyListener { 

    private int x, y; 
    private int pHealth; 
    private String string = "Would you like to play again?"; 
    private boolean restart = false; 

    public Restart(Main m) { 
     x = 600; 
     y = 600; 
    } 

    public void update(Main m, Player p) { 
     //checks if players health = 0 and if restart is true 
     pHealth = p.getpHealth(); 
     if (setRestart(true && pHealth <= 0)) { 
      System.out.println("Restart"); 
      x = m.Jweidth/2 - 75; 
      y = m.Jheight/2; 
     } 
     //reset ints for player 
     //TODO 
     //reset ints for enemy 
     //TODO 
     //reset ints for bullet 
     //TODO 
     //reset ints for healthbar 
     //TODO 
    } 

    public void paint(Graphics g) { 
     g.drawString(string, x, y); 
    } 

    public void keyPressed(KeyEvent e) { 
     switch (e.getKeyCode()) { 
      case KeyEvent.VK_F1: { 
       setRestart(true); 
       break; 
      } 
     } 
    } 

    public void keyReleased(KeyEvent e) { 
     switch (e.getKeyCode()) { 
      case KeyEvent.VK_F1: { 
       setRestart(false); 
       break; 
      } 
     } 
    } 

    public void keyTyped(KeyEvent arg0) { 
    } 

    //ignore all boolean methods 

    public boolean isRestart() { 
     return restart; 
    } 

    public boolean setRestart(boolean restart) { 
     this.restart = restart; 
     return restart; 
    } 
} 
+0

Я не знаю так много, но я думаю, вам нужно использовать апплеты. Взгляните на http://stackoverflow.com/a/4272861/2528167 –

+2

JavaScript! = Java –

ответ

1

Вы должны будете использовать апплеты встроить Java программу в браузере или Java Web Start если вы просто хотите запустить его из Интернета в новом окне.

Некоторые проблемы безопасности могут применяться в зависимости от используемой версии Java.

Вот некоторые примеры того, как сделать это:

А вот для Java Web Start:

+0

Спасибо за ответ BonanzaOne, дело в том, что я новичок в этом, и ваши учебники честно по моей голове. Вы знаете что-нибудь более простое. Еще раз спасибо. – user3715546

+0

Я согласен, вам придется потратить на это много времени. Вот простейший пример, который я могу найти: http://www.tutorialspoint.com/javaexamples/applet_create.htm. – BonanzaOne

0

Вам понадобится файл .jar и скомпилированный файл .class, а не файл .java. Чтобы реализовать Java-код в HTML, вы можете использовать устаревший тег <applet> или новый тег <object>.

<object codetype="application/java" classid="java:yourclass.class" archive="yourjar.jar" width="1000" height="1000"></object> 

CodeType = "приложение/Java" - тип кода, использовать приложение/Java.

classid = "?" - Java-класс для запуска, например. java: MyApplet.class

archive = "url" - Адрес или имя файла архива Java (.jar), содержащего файлы классов.

width = "?" - Ширина окна, в пикселях.

высота = "?" - Высота окна в пикселях.

Как раз говорю вам, я не уверен, что это сработает.