public class GameCanvas
extends java.lang.Object
修飾子とタイプ | フィールドと説明 |
---|---|
static int |
COLOR_AQUA
みずいろ
|
static int |
COLOR_BLACK
黒色
|
static int |
COLOR_BLUE
青色
|
static int |
COLOR_CYAN
シアン色
|
static int |
COLOR_GRAY
灰色
|
static int |
COLOR_GREEN
緑色
|
static int |
COLOR_PURPLE
紫色
|
static int |
COLOR_RED
赤色
|
static int |
COLOR_WHITE
白色
|
static int |
COLOR_YELLOW
黄色
|
static int |
CONFIG_FPS
FPSの設定
|
static int |
HEIGHT
画面の高さ
|
static int |
KEY_C
Cキー
|
static int |
KEY_DOWN
下ボタン
|
static int |
KEY_ENTER
ENTER
|
static int |
KEY_LEFT
左ボタン
|
static int |
KEY_RIGHT
右ボタン
|
static int |
KEY_SPACE
SPACE
|
static int |
KEY_UP
上ボタン
|
static int |
KEY_V
Vキー
|
static int |
KEY_X
Xキー
|
static int |
KEY_Z
Zキー
|
static int |
WIDTH
画面の幅
|
修飾子とタイプ | メソッドと説明 |
---|---|
double |
atan2(double x,
double y)
atan2を求める(ベクトルの角度を求める)
|
void |
changeBGMVolume(int volume)
BGMの音量を変更する
|
void |
changeSEVolume(int volume)
SEの音量を変更する
|
boolean |
checkHitCircle(int x1,
int y1,
int r1,
int x2,
int y2,
int r2)
円Aと円Bの当たり判定を行う
|
boolean |
checkHitImage(int img1,
int x1,
int y1,
int img2,
int x2,
int y2)
画像Aと画像Bを指定位置に書いたとしたときに画像同士が当たっているかを確かめる
drawImageでもし、画像Aと画像Bを書いたときに
|
boolean |
checkHitRect(int x1,
int y1,
int w1,
int h1,
int x2,
int y2,
int w2,
int h2)
矩形Aと矩形Bがぶつかっているか判定する
|
void |
clearScreen()
画面を白で塗りつぶす
|
double |
cos(double angle)
cosを求める
|
void |
drawCenterString(java.lang.String str,
int x,
int y)
文字列を中心位置を指定して描画する
|
void |
drawCircle(int x,
int y,
int r)
中抜き円の描画
|
void |
drawClipImage(int id,
int x,
int y,
int u,
int v,
int w,
int h)
画像部分描画
|
void |
drawImage(int id,
int x,
int y)
画像描画
|
void |
drawLine(int sx,
int sy,
int ex,
int ey)
直線の描画
|
void |
drawMessage()
描画時に行う処理
|
void |
drawRect(int x,
int y,
int w,
int h)
中抜きの長方形の描画
|
void |
drawRightString(java.lang.String str,
int x,
int y)
文字列を右寄せにして描画する
|
void |
drawScaledRotateImage(int id,
int x,
int y,
int xsize,
int ysize,
double rotate)
画像を拡大縮小・回転をかけて表示
|
void |
drawScaledRotateImage(int id,
int x,
int y,
int xsize,
int ysize,
double rotate,
double px,
double py)
画像を拡大縮小・回転をかけて表示
|
void |
drawString(java.lang.String str,
int x,
int y)
文字列を描画する
|
void |
exitApp()
アプリを終了させる
|
void |
fillCircle(int x,
int y,
int r)
塗りつぶし円の描画
|
void |
fillRect(int x,
int y,
int w,
int h)
塗りつぶしの長方形の描画
|
void |
finalize()
gameCanvasの終了時の処理です
|
int |
getImageHeight(int id)
画像の高さを得る
|
int |
getImageWidth(int id)
画像の幅を得る
|
static GameCanvas |
getInstance()
シングルトン 既にgameCanvasオブジェクトが生成されていたら、それを返す。
|
int |
getKeyPressLength(int keyCode)
キーを押している長さを調べる
引数で指定したキーが、どのくらい押されているかを返す
|
int |
getMouseClickLength()
マウスのボタンが押されている時間を調べる
|
int |
getMouseX()
マウスのX座標を取得する
|
int |
getMouseY()
マウスのY座標を取得する
|
int |
getStringWidth(java.lang.String str)
文字列のドット幅を調べます
引数strをdrawString等で描画したときの幅を返します。
|
void |
init(javax.swing.JFrame _f,
gameCanvasUtil.GameInterface g)
gameCanvasの初期化を行う
|
boolean |
isKeyPress(int keyCode)
キーが押された状態かどうかを調べる
引数で指定したキーが押されている場合、trueが返される
|
boolean |
isKeyPushed(int keyCode)
キーを押した瞬間かどうかを調べる
引数で指定したキーが、押された直後であった場合trueを返す
|
boolean |
isKeyReleased(int keyCode)
キーが離された瞬間かどうかを調べる
引数で指定したキーが、離した直後であった場合trueを返す
|
boolean |
isMousePress()
マウスのボタンが押された状態かどうかを調べる
|
boolean |
isMousePushed()
マウスのボタンを押した瞬間かどうかを調べる
|
boolean |
isMouseReleased()
マウスのボタンを離した瞬間かどうかを調べる
|
int |
load(int idx)
読み込んだセーブデータからint値を読み出す
|
void |
pauseBGM()
BGMを一時停止する
|
void |
pauseSE()
全てのSEを一時停止する
|
void |
playBGM(int id)
BGMをループ再生する
BGMの再生は排他的で、2つ同時に再生は行わない
|
void |
playBGM(int id,
boolean loop)
BGMを再生する
BGMの再生は排他的で、2つ同時に再生は行わない
|
void |
playSE(int id)
SEを再生する
|
void |
playSE(int id,
boolean loop)
SEを再生する
|
int |
rand(int min,
int max)
min~maxまでの間のランダムな値を返す。
|
void |
resetGame()
ゲームステートをデフォルト状態にします
|
void |
resetGameInstance(gameCanvasUtil.GameInterface g)
実行されるゲームクラスを再セット
|
void |
save(int idx,
int param)
セーブデータバッファにデータをセットする
|
void |
setColor(int color)
drawStringや、drawRectなどで使用する色のセット
|
void |
setColor(int red,
int green,
int blue)
drawStringや、drawRectなどで使用する色のセット
|
void |
setFont(java.lang.String font_name,
int font_style,
int font_size)
drawStringなどで使用するフォントを変更します。
|
void |
setFontSize(int font_size)
フォントサイズの変更
|
void |
setGraphics(java.awt.Graphics gr,
java.awt.Image img)
Graphicsクラスへの参照をセットする
|
void |
setSeed(int seed)
乱数の種をセットする
|
void |
setWindowTitle(java.lang.String title)
Windowの文字列を指定します
|
java.lang.String |
showInputDialog(java.lang.String message,
java.lang.String default_input)
ユーザーに文字列の入力を求めるダイアログを出す
|
boolean |
showYesNoDialog(java.lang.String message)
YesNoを選択させるダイアログを出す
|
double |
sin(double angle)
sinを求める
|
double |
sqrt(double data)
平方根(√)を求める
|
void |
stopBGM()
BGMを停止する
|
void |
stopSE()
全てのSEを停止する
|
void |
updateMessage()
更新時に行う処理
|
boolean |
writeScreenImage(java.lang.String file)
現在の画面を、画像として保存します
|
public static final int WIDTH
public static final int HEIGHT
public static final int CONFIG_FPS
public static final int KEY_UP
public static final int KEY_DOWN
public static final int KEY_LEFT
public static final int KEY_RIGHT
public static final int KEY_Z
public static final int KEY_X
public static final int KEY_C
public static final int KEY_V
public static final int KEY_ENTER
public static final int KEY_SPACE
public static final int COLOR_WHITE
public static final int COLOR_BLACK
public static final int COLOR_GRAY
public static final int COLOR_RED
public static final int COLOR_BLUE
public static final int COLOR_GREEN
public static final int COLOR_YELLOW
public static final int COLOR_PURPLE
public static final int COLOR_CYAN
public static final int COLOR_AQUA
public static GameCanvas getInstance()
public void init(javax.swing.JFrame _f, gameCanvasUtil.GameInterface g)
public void finalize()
finalize
クラス内 java.lang.Object
public void setGraphics(java.awt.Graphics gr, java.awt.Image img)
gr
- public boolean writeScreenImage(java.lang.String file)
file
- 拡張子を除いたファイル名を入れますpublic void setWindowTitle(java.lang.String title)
title
- Windowのタイトルの文字列を指定public void drawString(java.lang.String str, int x, int y)
str
- 描画する文字列x
- 左上のX座標y
- 左上のY座標public void drawCenterString(java.lang.String str, int x, int y)
str
- 描画する文字列x
- 中心のX座標y
- 上のY座標public void drawRightString(java.lang.String str, int x, int y)
str
- 描画する文字列x
- 右上のX座標y
- 上のY座標public void setFont(java.lang.String font_name, int font_style, int font_size)
font_name
- フォント名の指定font_style
- フォントのスタイルの指定font_size
- フォントのサイズの指定public void setFontSize(int font_size)
font_size
- フォントのサイズを指定しますpublic int getStringWidth(java.lang.String str)
str
- 調べる文字列public void setColor(int color)
color
- RGBで指定public void setColor(int red, int green, int blue)
red
- R成分green
- G成分blue
- B成分public void drawLine(int sx, int sy, int ex, int ey)
sx
- 開始点のX座標sy
- 開始店のY座標ex
- 終了点のX座標ey
- 終了点のY座標public void drawRect(int x, int y, int w, int h)
x
- 長方形の左上のX座標y
- 長方形の左上のY座標w
- 長方形の幅h
- 長方形の高さpublic void fillRect(int x, int y, int w, int h)
x
- 長方形の左上のX座標y
- 長方形の左上のY座標w
- 長方形の幅h
- 長方形の高さpublic void drawCircle(int x, int y, int r)
x
- 円の中心のX座標y
- 円の中心のY座標r
- 円の半径public void fillCircle(int x, int y, int r)
x
- 円の中心のX座標y
- 円の中心のY座標r
- 円の半径public void drawImage(int id, int x, int y)
id
- 画像のID。img0.gifならIDは0。img1.gifならIDは1。x
- 画像の左上のX座標y
- 画像の左上のY座標public void drawClipImage(int id, int x, int y, int u, int v, int w, int h)
id
- 画像のID。img0.gifならIDは0。img1.gifならIDは1。x
- 画像の左上のX座標y
- 画像の左上のY座標u
- 元画像より使用する部分の左上X座標v
- 元画像より使用する部分の左上Y座標w
- 描画する幅h
- 描画する高さpublic void drawScaledRotateImage(int id, int x, int y, int xsize, int ysize, double rotate)
id
- 画像のナンバーですx
- 画像の中心X座標ですy
- 画像の中心Y座標ですxsize
- 横にどのくらい拡大するか?100%を基準にしてます。(xsizeが100の時、等倍。200なら2倍の大きさ)ysize
- 縦にどのくらい拡大するか?100%を基準にしてます。(ysizeが100の時、等倍。200なら2倍の大きさ)rotate
- 画像を何度回転させるか?(角度で指定)not弧度法public void drawScaledRotateImage(int id, int x, int y, int xsize, int ysize, double rotate, double px, double py)
id
- 画像のナンバーですx
- 画像の中心X座標ですy
- 画像の中心Y座標ですxsize
- 横にどのくらい拡大するか?100%を基準にしてます。(xsizeが100の時、等倍。200なら2倍の大きさ)ysize
- 縦にどのくらい拡大するか?100%を基準にしてます。(ysizeが100の時、等倍。200なら2倍の大きさ)rotate
- 画像を何度回転させるか?(角度で指定)not弧度法px
- 画像の回転の中心位置のX座標py
- 画像の回転の中心位置のY座標public int getImageWidth(int id)
id
- 画像のID。img0.gifならIDは0。img1.gifならIDは1。public int getImageHeight(int id)
id
- 画像のID。img0.gifならIDは0。img1.gifならIDは1。public void setSeed(int seed)
seed
- セットする乱数のシードpublic int rand(int min, int max)
min
- ランダムの最小値max
- ランダムの最大値public void resetGame()
public void resetGameInstance(gameCanvasUtil.GameInterface g)
public void updateMessage()
public void drawMessage()
public void clearScreen()
public void exitApp()
public boolean showYesNoDialog(java.lang.String message)
message
- 確認用のメッセージpublic java.lang.String showInputDialog(java.lang.String message, java.lang.String default_input)
message
- ユーザーに対するメッセージdefault_input
- デフォルト状態での入力public void playBGM(int id)
id
- BGMの番号public void playBGM(int id, boolean loop)
id
- BGMの番号loop
- ループするかどうかを指定するpublic void changeBGMVolume(int volume)
volume
- 音量の指定(0-100)public void stopBGM()
public void pauseBGM()
public void playSE(int id)
id
- SEの番号public void playSE(int id, boolean loop)
id
- SEの番号loop
- SEをループさせるかセットするpublic void changeSEVolume(int volume)
volume
- 音量の指定(0-100)public void stopSE()
public void pauseSE()
public int getKeyPressLength(int keyCode)
keyCode
- KEY_0 なら「0キー」KEY_LEFT なら 「左カーソルキー」という感じで、調べたいキーを指定public boolean isKeyPress(int keyCode)
keyCode
- KEY_0 なら「0キー」KEY_LEFT なら 「左カーソルキー」という感じで、調べたいキーを指定public boolean isKeyPushed(int keyCode)
keyCode
- KEY_0 なら「0キー」KEY_LEFT なら 「左カーソルキー」という感じで、調べたいキーを指定public boolean isKeyReleased(int keyCode)
keyCode
- KEY_0 なら「0キー」KEY_LEFT なら 「左カーソルキー」という感じで、調べたいキーを指定public int getMouseX()
public int getMouseY()
public int getMouseClickLength()
public boolean isMousePushed()
public boolean isMouseReleased()
public boolean isMousePress()
public int load(int idx)
idx
- データのインデックスを指定public void save(int idx, int param)
idx
- データのインデックスを指定param
- セーブデータに書き込むint値public boolean checkHitRect(int x1, int y1, int w1, int h1, int x2, int y2, int w2, int h2)
x1
- 矩形Aの左上X座標y1
- 矩形Aの左上Y座標w1
- 矩形Aの幅h1
- 矩形Aの高さx2
- 矩形Bの左上X座標y2
- 矩形Bの左上Y座標w2
- 矩形Bの幅h2
- 矩形Bの高さpublic boolean checkHitImage(int img1, int x1, int y1, int img2, int x2, int y2)
img1
- 画像AのIDを指定x1
- 画像Aの左上X座標を指定y1
- 画像Aの左上Y座標を指定img2
- 画像BのIDを指定x2
- 画像Bの左上X座標を指定y2
- 画像Bの左上Y座標を指定public boolean checkHitCircle(int x1, int y1, int r1, int x2, int y2, int r2)
x1
- 円Aの中心X座標y1
- 円Aの中心Y座標r1
- 円Aの半径x2
- 円Bの中心X座標y2
- 円Bの中心Y座標r2
- 円Bの半径public double sqrt(double data)
data
- 平方根を求めたい数字public double cos(double angle)
angle
- 角度を指定する(not 弧度法)public double sin(double angle)
angle
- 角度を指定する(not 弧度法)public double atan2(double x, double y)
x
- ベクトルのX成分y
- ベクトルのY成分