Bang hộiTiền mặt: 0 Xu Trò chơiHộp quà giáng sinhThứ Hai, 18:42:20 - 25/11/2024
Chia sẻ kiến thức lập trình HTML / CSS / JavaScript

Các điều hành viên: Admin, Mod, SMod

[J2ME] – hướng dẫn tạo màn hình load game

[J2ME] – hướng dẫn tạo màn hình load game

#1 » Gửi bài gửi bởi GmGmNewGate » 03/07/2013 17:28 » @241013

tạo Lớp Point.java
Mã: Chọn tất cả
package Zstar;

/**
*
* @author zstar
*/
public class Point {

private int X = 0;
private int Y = 0;

public Point() {
}

public Point(int x, int y) {
this.X = x;
this.Y = y;
}

public int getX() {
return this.X;
}

public int getY() {
return this.Y;
}
}

Lớp LoadingScreen.java
Mã: Chọn tất cả
package Zstar;

import java.io.*;
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.GameCanvas;

/**
* @author ZSTAR
*/
public class LoadingScreen extends GameCanvas {

private Graphics g;
private String logo = "/Images/logo.png";
private String text1 = "Game tiếng việt trên điện thoại";
private String text2 = "Đang tải...";
private Image imageLogo;
private Point root = new Point(30, 50);
private Font fontNormal;
private Font fontBold;
//thanh loading
private int colorBorder = 0x000000;
private int colorLoading = 0xcc3301;
private int loadingLength = 150;
private int loadingHeight = 5;
private int loadingCurrent = 0;
private int h = 10;
private MainMidlet mainMidlet;

public LoadingScreen(MainMidlet main) {
super(false);
this.mainMidlet = main;
this.g = this.getGraphics();
this.fontNormal = g.getFont();
this.fontBold = Font.getFont(Font.FACE_SYSTEM, Font.STYLE_BOLD, Font.SIZE_MEDIUM);
setFullScreenMode(true);
try {
imageLogo = Image.createImage(logo);
} catch (IOException ex) {
ex.printStackTrace();
}
this.root = new Point(getWidth() / 2 - imageLogo.getWidth() / 2, root.getY());

}

public void start() {
clearScreen();
draw();
draw_next_loading();
}

public void draw() {
g.setColor(0x000000);
g.drawImage(imageLogo, root.getX(), root.getY(), Graphics.TOP | Graphics.LEFT);
g.drawString(text1, getWidth() / 2 - fontNormal.stringWidth(text1) / 2, root.getY() + imageLogo.getHeight(), Graphics.TOP | Graphics.LEFT);
g.setFont(fontBold);
g.drawString(text2, getWidth() / 2 - fontBold.stringWidth(text2) / 2, root.getY() + imageLogo.getHeight() + 40, Graphics.TOP | Graphics.LEFT);
g.setFont(fontNormal);
//draw loading
g.setColor(colorBorder);
g.drawRect(getWidth() / 2 - loadingLength / 2, root.getY() + imageLogo.getHeight() + 30, loadingLength, loadingHeight);
g.setColor(colorLoading);
g.fillRect(getWidth() / 2 - loadingLength / 2, root.getY() + imageLogo.getHeight() + 30, loadingCurrent, loadingHeight);
g.setColor(colorBorder);
this.flushGraphics();
}

private void draw_next_loading() {
clearLoading();
//timer.schedule(task, interval,interval);
for (int i = 0; i < loadingLength / h; i++) {
if (loadingCurrent < loadingLength) {
loadingCurrent += h;
//draw loading
g.setColor(colorBorder);
g.drawRect(getWidth() / 2 - loadingLength / 2, root.getY() + imageLogo.getHeight() + 30, loadingLength, loadingHeight);
g.setColor(colorLoading);
g.fillRect(getWidth() / 2 - loadingLength / 2, root.getY() + imageLogo.getHeight() + 30, loadingCurrent, loadingHeight);
g.setColor(colorBorder);
this.flushGraphics();
try {
Thread.sleep(100);
} catch (Exception e) {
}
} else {
loadingCurrent = 0;
break;
}
}

}

private void clearLoading() {
g.setColor(0xffffff);
g.fillRect(getWidth() / 2 - loadingLength / 2, root.getY() + imageLogo.getHeight() + 30, loadingLength, loadingHeight);
this.flushGraphics();
}

public void clearScreen() {
g.setColor(0xffffff); // white
g.fillRect(0, 0, getWidth(), getHeight());
this.flushGraphics();
}
}

tạo Lớp MainMidlet.java
Mã: Chọn tất cả
package Zstar;

import javax.microedition.lcdui.Display;
import javax.microedition.midlet.*;

/**
* @author ZSTAR
*/
public class MainMidlet extends MIDlet {
private LoadingScreen loadingScreen;

public void startApp() {
loadingScreen=new LoadingScreen(this);
Display.getDisplay(this).setCurrent(loadingScreen);
loadingScreen.start();
}

public void pauseApp() {
}

public void destroyApp(boolean unconditional) {
}
}
Yahoo:GmGmNewgate@yahoo.com
F.A Kệ Bố Ok:Chú Hưng

Những người đã like GmGmNewGate bởi bài viết có ích này (Tổng: 2):
Songoku2014nghiammo1992
GmGmNewGate
Hình đại diện của thành viên
Rank: ☀️6/30☀️
Cấp độ:
Tu luyện:
Like:
Online:
Bang hội: ?????
Xếp hạng Bang hội: ⚡??/??⚡
Level:
Chủ đề đã tạo: 🩸20/4141🩸
Tiền mặt:
Nhóm:
Danh hiệu: ?????
Giới tính:
Ngày tham gia:
Đến từ:
(Google Chrome 27.0.145)

Re: [J2ME] – hướng dẫn tạo màn hình load game

#2 » Gửi bài gửi bởi Vipvip » 03/07/2013 17:34 » @241015

Hiểu gì die lun
Kí làm quái gì!
Vipvip
Hình đại diện của thành viên
Rank: ☀️13/30☀️
Cấp độ:
Tu luyện:
Like:
Online:
Bang hội: Trảm Phong
Xếp hạng Bang hội: ⚡1/249⚡
Level:
Chủ đề đã tạo: 🩸123/4141🩸
Tiền mặt:
Ngân hàng:
Nhóm:
Danh hiệu: ⚝Di Hoa Tiếp Mộc⚝
Giới tính:
Ngày tham gia:
Đến từ:
Số điện thoại:
(Opera Mini 4.4.2)

Re: [J2ME] – hướng dẫn tạo màn hình load game

#3 » Gửi bài gửi bởi KotexDamMau » 03/07/2013 17:35 » @241017

Hiểu gì đai lun
KotexDamMau
Hình đại diện của thành viên
Rank: ☀️4/30☀️
Cấp độ:
Tu luyện:
Like:
Online:
Bang hội: ?????
Xếp hạng Bang hội: ⚡??/??⚡
Level:
Chủ đề đã tạo: 🩸???/4141🩸
Tiền mặt:
Nhóm:
Danh hiệu: ?????
Giới tính:
Ngày tham gia:
(Nokia 200)



Quay về HTML / CSS / JavaScript

 


  • Chủ đề tương tự
    Trả lời
    Xem
    Bài viết mới nhất