応援優勝も総合優勝も残念ながら取れませんでしたが、応援団を中心に楽しく体育祭に参加できたのでよかったです。個人的には、久しぶりに100m走を真剣に走れて楽しかったです。あの走る前の緊張感と走り終わったあとの満足感は、中学時代に戻ったようで懐かしくもあり楽しかったです。決勝戦(体育祭なのに..)にも参加させていただいて、ありがとうございました。
そんなこんなで、体育祭も無事終わり家に帰ってくると数日前にAmazonで注文したダンベルセットが届いていました。体育祭終わった直後に筋トレなんて、体だるいしやれるわけ無いでしょ…….タイミングー。
ただ、最近動画を上げることにしているので撮らないわけにも行かず、疲れた体でダンベルを組み立てて、実際に使ってみた様子の動画まで撮って、おまけに編集までして頑張りました。本当に無駄な努力で、その努力を受験勉強に使えればよかったのに(笑)
★Youtubeにアップロード
もちろん、今回もYoutubeに開封して実際に使ってみたところまでの動画をアップロードしておきました。購入の参考になれば幸いです。
★値段はどう?
値段はAmazonの現在価格で、3980円になっています。片手づつ交互にやるのなら1つでいいですが、両腕とも一緒に鍛えたい方は2つ購入するのをおすすめします。毎日ダンベルで筋トレするとして、2つ買えばその筋トレにかかる時間は半分ですみますから余裕があれば買ったほうが良いかと思います。もちろん私も2セット買って置きました。
★製品の作りは?
製品の作りは割とがっしりしていて、上部にできていると思います。製品自体に雑に作られているなと見受けられる箇所は見当たりませんでした。強いて言えば、内容物の重さの割には箱が結構弱くて、私の場合開ける前から箱が破れかけていました。ただまあ、重さが重さですので仕方ないでしょう。あ、忘れていましたが汚れのようなものがついていました。詳しくは動画でご確認ください。
★使ってみた感想は?
さすが、重さ分だけあってかなり効きます。今回は立って使わずに、フラットベンチに寝転がった状態で何回もダンベルを持ち上げてみましたがかなりいい感じに筋トレができたのではないでしょうか。動画で撮影した映像は、何回か練習した後に、何回か撮り直しが発生してかなりへばっていますが、良いトレーニングになると思います。この製品のいいところはおもりの調整が容易で、割りと自由に調整できることですね。
今回はおもりだけで5kg分だけつけてトレーニングしてみましたが、SD-15のモデルだと15kgまでおもりを増やすことができます。今回の3倍の重量です。おもりの付け替えれないダンベルを購入すると、トレーニングが進むに従って買い換える必要がありますが、この製品はおもりの付け替えが容易にできますのでその面デメリットがあるかと思います。私はその点がいいと感じて購入しました。
デザインもしっかりしていてお部屋に置いておけるシロモノだと思うので、筋トレしてみたいなという方は購入を検討してみてはいかがでしょうか。
import java.awt.Canvas;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.image.BufferedImage;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class SampleRPG01 extends JFrame implements KeyListener, ActionListener{
/*
*
*/
private static MainCanvas mainCanvas;
private static SubCanvas subCanvas;
private static JButton debugButton;
private static JLabel enemyView;
private static JLabel lifeView;
private BufferedImage image01;
private BufferedImage image02;
private BufferedImage image03;
private BufferedImage image04;
private BufferedImage image05;
private BufferedImage image06;
private BufferedImage image07;
private BufferedImage image08;
public static int map[][] = new int[60][60];//30:30
public static int charX, charY;
public static int shockX, shockY;
public static boolean KissOfDeath01;
public static boolean KissOfDeath02;
public static int evilShock;
public static int bubbleShock;
//public static char directionTravel;
public static boolean paintLoop;
public static int[] enemyNoArray = new int[50];
public static Image offImage;
public static int enemyThatExist;
public static boolean DRAWINGTIMING = false;
public static int movePeriod = 0;
public static int repaintPeriod = 300;
public static boolean relocate;
//public static Enemy ENEMY;
public static Map MAP;
SampleRPG01(){
//Configuring JFrame
setTitle(“SampleRPG01”);
setBounds(0,0,1500,890);
setLayout(null);
//Configuring Canvas
mainCanvas = new MainCanvas();
//subCanvas = new SubCanvas();
mainCanvas.setBounds(0,0,870,890);
//subCanvas .setBounds(870,0,500,500);
add(mainCanvas);
//add(subCanvas);
//Configuring JButton
debugButton = new JButton(“Visible”);
debugButton.setBounds(900,300,50,50);
debugButton.addActionListener(this);
add(debugButton);
//Configuring JLabel
enemyView = new JLabel(“Enemy that exist”);
lifeView = new JLabel(“Player Life is INITIALIZATION”);
enemyView.setBounds(900,500,300,50);
lifeView.setBounds(900,550,300,50);
add(enemyView);
add(lifeView);
//Preparing the Image
try {
FileInputStream in01 = new FileInputStream(“corvy.png”);
FileInputStream in02 = new FileInputStream(“shock.png”);
FileInputStream in03 = new FileInputStream(“danbor.png”);
FileInputStream in04 = new FileInputStream(“bubble.png”);
FileInputStream in05 = new FileInputStream(“corvy2.png”);
FileInputStream in06 = new FileInputStream(“danbor2.png”);
BufferedImage rv01 = ImageIO.read(in01);
BufferedImage rv02 = ImageIO.read(in02);
BufferedImage rv03 = ImageIO.read(in03);
BufferedImage rv04 = ImageIO.read(in04);
BufferedImage rv05 = ImageIO.read(in05);
BufferedImage rv06 = ImageIO.read(in06);
in01.close();
in02.close();
in03.close();
in04.close();
in05.close();
in06.close();
image01 = rv01;
image02 = rv02;
image03 = rv03;
image04 = rv04;
image05 = rv05;
image06 = rv06;
} catch (FileNotFoundException e) {
// TODO 自動生成された catch ブロック
e.printStackTrace();
} catch (IOException e) {
// TODO 自動生成された catch ブロック
e.printStackTrace();
}
//addKeyListener
mainCanvas.addKeyListener(this);
MAP = new Map();
}
public static void main(String[] args){
new SampleRPG01().setVisible(true);
init();
//mainCanvas.repaint();
}
public static void visible(){
for(int i = 1; i<=30; i++){
for(int j = 1; j<=30; j++){
System.out.print(map[i][j]);
}
System.out.println();
}
}
public static void init(){
//Call the createMap01 MapClass
MAP.createMap01(map);
map[15][15] = 1;
//Initialization of Character Position
charX = MAP.characterIntialPositionX01;
charY = MAP.characterIntialPositionY01;
//Initialization of Shock
//directionTravel = 's';
//Initialization of enemyNoArray
for(int i = 1; i<=45; i++){
enemyNoArray[i] = 0;
}
//Initialization of enemyThatExist
enemyThatExist = 0;
//Initialization of evilShock
evilShock = 1;
bubbleShock = 1;
//Create Enemy
//for(int i = 1; i= 3){
new Enemy().moveEnemy();
//new Enemy().attackEnemy();
movePeriod = 0;
}
Thread.sleep(repaintPeriod);
relocate = true;
//DRAWINGTIMING = false;
mainCanvas.repaint();
//subCanvas.repaint();
System.out.println(“repaint:loop”);
movePeriod++;
new Enemy().countSuvirveEnemy();
enemyView.setText(“Enemy that exist : ” + enemyThatExist);
} catch (InterruptedException e) {
// TODO 自動生成された catch ブロック
e.printStackTrace();
}
}
}
}).start();
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO 自動生成されたメソッド・スタブ
for(int i =1; i<=30; i++){
for(int j = 1; j 0){
try {
Thread.sleep(1000);
map[Y][X] = 0;
map[Y+attackY][X+attackX] = 0;
map[Y+attackY+attackY][X+attackX+attackX] = 0;
bubbleShock–;
} catch (InterruptedException e) {
// TODO 自動生成された catch ブロック
e.printStackTrace();
}
}
}
}).start();
//CHECK = true;
}
//if(CHECK == true){
//mainCanvas.repaint();
//}
}
@Override
public void keyReleased(KeyEvent e) {
// TODO 自動生成されたメソッド・スタブ
}
class MainCanvas extends Canvas{
@Override
public void paint(Graphics g){
Dimension size = mainCanvas.getSize();
Image back = createImage(size.width,size.height);
Graphics buffer = back.getGraphics();
buffer.setColor(Color.white);
buffer.fillRect(0, 0, 870, 890);
for(int i = 1; i<=30; i++){
for(int j = 1; j<=30; j++){
switch(map[i][j]){
case 0:
buffer.setColor(new Color(0x111111));
buffer.drawRect((j-1) * 28 + 10, (i-1) * 28 + 10, 23, 23);
break;
case 1:
buffer.setColor(new Color(0x111111));
buffer.drawRect((j-1) * 28 + 10, (i-1) * 28 + 10, 23, 23);
break;
case 2:
//buffer.drawImage(image04,(charX + shockX – 1) * 28 + 10, (charY + shockY – 1) * 28 + 10, this);
buffer.drawImage(image04, (j-1)*28+10,(i-1)*28+10, this);
break;
case 8:
buffer.setColor(new Color(0xaaaaaa));
buffer.fillRect((j-1) * 28 + 10, (i-1) * 28 + 10, 23,23);
break;
case 9:
buffer.setColor(new Color(0x000000));
buffer.fillRect((j-1) * 28 + 10, (i-1) * 28 + 10, 23,23);
break;
case 30:
buffer.drawImage(image03, (j-1) * 28 + 10, (i-1) * 28 + 10, this);
break;
case 31:
buffer.drawImage(image02, (j-1) * 28 + 10, (i-1) * 28 + 10, 23, 23, this);
//System.out.println("case:31=================");
break;
case 39:
buffer.drawImage(image05, (j-1) * 28 + 10, (i-1) * 28 + 10, 23, 23, this);
break;
default:
System.out.println("ERROR:CODE98");
break;
}
}
}
buffer.drawImage(image01 , (charX – 1) * 28 + 10,(charY – 1) * 28 + 10, this);
g.drawImage(back, 0, 0, this);
//System.out.println("paint:E");
}
}
class SubCanvas extends Canvas{
@Override
public void paint(Graphics g){
g.setColor(new Color(0x00FFFF));
g.fillRect(5, 5, 370, 370);
for(int i = 1; i<=30; i++){
for(int j = 1; j<=30; j++){
switch(map[i][j]){
case 0:
g.setColor(new Color(0x111111));
g.drawRect((j-1) * 12, (i-1) * 12 + 10, 10, 10);
break;
case 1:
g.setColor(new Color(0xff33aa));
g.fillRect((j-1) * 12 + 10, (i-1) * 12 + 10, 10, 10);
break;
case 2:
g.setColor(new Color(0x0000ff));
g.fillRect((j-1) * 12 + 10, (i-1) * 12 + 10, 10, 10);
break;
case 8:
g.setColor(new Color(0xaaaaaa));
g.fillRect((j-1) * 12 + 10, (i-1) * 12 + 10, 10 ,10);
break;
case 9:
g.setColor(new Color(0x000000));
g.fillRect((j-1) * 12 + 10, (i-1) * 12 + 10, 10,10);
break;
case 30:
g.setColor(new Color(0x00FF00));
g.fillRect((j-1) * 12 + 10, (i-1) * 12 + 10, 10 ,10);
break;
case 31:
g.setColor(new Color(0xaaaa00));
g.fillRect((j-1) * 12 + 10, (i-1) * 12 + 10, 10,10); //System.out.println("case:31=================");
break;
default:
System.out.println("ERROR:CODE98");
break;
}
}
}
}
}
}
import java.util.Random;
public class Enemy {
public int enemyX = 1, enemyY=1;
public boolean FRIST_TIME = true;
public int enemyNum01 = 30;
public int rnd ;
public int movedX, movedY;
public boolean succeesful;
public int[][] clone = new int[35][35];
public int burnX, burnY;
public int suvirveEnemyNum;
public final int attackFrequency = 3;
public final int AbilityToLook = 3;
public int directionPlayerX, directionPlayerY;
public void createEnemy(int num){
for(int loop = 1; loop<=num; loop++){
while(SampleRPG01.map[enemyY][enemyX] != 0){
enemyX = new Random().nextInt(30)+1;
enemyY = new Random().nextInt(30)+1;
}
SampleRPG01.map[enemyY][enemyX] = 30;
}
System.out.println("createEnemy2()E");
}
public void cloning(int[][] map){
for(int i = 1; i<=30; i++){
for(int j = 1; j<=30; j++){
clone[i][j] = map[i][j];
}
}
}
public int countSuvirveEnemy(){
suvirveEnemyNum = 0;
for(int i = 1; i<=30; i++){
for(int j = 1; j<=30; j++){
if(SampleRPG01.map[i][j] == 30){
suvirveEnemyNum++;
}
}
}
return suvirveEnemyNum;
}
public void mapUpdate(int[][] clone){
for(int i = 1; i<=30; i++){
for(int j = 1; j<=30; j++){
SampleRPG01.map[i][j] = clone[i][j];
}
}
}
public void searchPlayer(){
}
public void moveEnemy(){
//Create Clone of SampleRPG01.map
cloning(SampleRPG01.map);
for(int i = 1; i<=30; i++){
for(int j = 1; j<=30; j++){
if(SampleRPG01.map[i][j] == 31){
SampleRPG01.map[i][j] = 0;
}
}
}
for(int i = 1; i<=30; i++){
T1:for(int j = 1; j<=30; j++){
if(SampleRPG01.map[i][j] == 30){
//Initialization of dicretionPlayerPosition
directionPlayerX = 9999;
directionPlayerY = 9999;
//Searching for the Player
SEARCH:for(int k = -AbilityToLook; k<=AbilityToLook; k++){
for(int l = -AbilityToLook; l 0){
directionPlayerX = 1;
}else if(directionPlayerX 0){
directionPlayerX = 1;
}else if(directionPlayerY < 0){
directionPlayerY = -1;
}else{
directionPlayerY = 0;
}
//Attack Fire Enemy
//EnemyMove Patern1 Parten2(inpossible → Random Move)
if((directionPlayerX == 0) || (directionPlayerY == 0)){
clone[i+directionPlayerY][j+directionPlayerX] = 31;
clone[i+directionPlayerY+directionPlayerY][j+directionPlayerX+directionPlayerX] = 31;
clone[i+directionPlayerY+directionPlayerY+directionPlayerY][j+directionPlayerX+directionPlayerX+directionPlayerX] = 31;
if(clone[i+directionPlayerY][j+directionPlayerX] == 0){
clone[i][j] = 0;
clone[i+directionPlayerY][j+directionPlayerX] = 30;
}else if(clone[i+directionPlayerY][j+directionPlayerX] == 1){
break T1;
}else{
//Jump Random move Enemy
directionPlayerX = 9999;
directionPlayerY = 9999;
}
}else{
switch(new Random().nextInt(2)+1){
case 1:
if(clone[i][j+directionPlayerX] == 0){
clone[i][j] = 0;
clone[i][j+directionPlayerX] = 30;
}else{
//Jump Random move Enemy
directionPlayerX = 9999;
directionPlayerY = 9999;
}
break;
case 2:
if(clone[i+directionPlayerY][j] == 0){
clone[i][j] = 0;
clone[i+directionPlayerY][j] = 30;
}else{
//Jump Random move Enemy
directionPlayerX = 9999;
directionPlayerY = 9999;
}
break;
}
}
// SampleRPG01.map[]
break SEARCH;
}
}catch(Exception ex){
};
}
}
if((directionPlayerX == 9999) || (directionPlayerY == 9999)){
switch(new Random().nextInt(4)+1){
case 1://上左右下
if((SampleRPG01.map[i-1][j] == 0) && (clone[i-1][j] == 0)){
movedX = j;
movedY = i-1;
}
if((SampleRPG01.map[i][j-1] == 0) && (clone[i][j-1] == 0)){
movedX = j-1;
movedY = i;
}
if((SampleRPG01.map[i][j+1] == 0) && (clone[i][j+1] == 0)){
movedX = j+1;
movedY = i;
}
if((SampleRPG01.map[i+1][j] == 0) && (clone[i+1][j] == 0)){
movedX = j;
movedY = i+1;
}
break;
case 2://下右左上
if((SampleRPG01.map[i+1][j] == 0) && (clone[i+1][j] == 0)){
movedX = j;
movedY = i+1;
}
if((SampleRPG01.map[i][j+1] == 0) && (clone[i][j+1] == 0)){
movedX = j+1;
movedY = i;
}
if((SampleRPG01.map[i-1][j] == 0) && (clone[i-1][j] == 0)){
movedX = j;
movedY = i-1;
}
if((SampleRPG01.map[i][j-1] == 0) && (clone[i][j-1] == 0)){
movedX = j-1;
movedY = i;
}
break;
case 3://左下上右
if((SampleRPG01.map[i][j-1] == 0) && (clone[i][j-1] == 0)){
movedX = j-1;
movedY = i;
}
if((SampleRPG01.map[i+1][j] == 0) && (clone[i+1][j] == 0)){
movedX = j;
movedY = i+1;
}
if((SampleRPG01.map[i-1][j] == 0) && (clone[i-1][j] == 0)){
movedX = j;
movedY = i-1;
}
if((SampleRPG01.map[i][j+1] == 0) && (clone[i][j+1] == 0)){
movedX = j+1;
movedY = i;
}
break;
case 4://右上下左
if((SampleRPG01.map[i][j+1] == 0) && (clone[i][j+1] == 0)){
movedX = j+1;
movedY = i;
}
if((SampleRPG01.map[i-1][j] == 0) && (clone[i-1][j] == 0)){
movedX = j;
movedY = i-1;
}
if((SampleRPG01.map[i+1][j] == 0) && (clone[i+1][j] == 0)){
movedX = j;
movedY = i+1;
}
if((SampleRPG01.map[i][j-1] == 0) && (clone[i][j-1] == 0)){
movedX = j-1;
movedY = i;
}
break;
/*
case 1:
for(int k = -1; k<=1; k++){
for(int l = -1; l<=1; l++){
if(SampleRPG01.map[i+k][j+l] == 0){
movedX = j+l;
movedY = i+k;
}
}
}
break;
case 2:
for(int k = -1; k=-1; l–){
if(SampleRPG01.map[i+k][j+l] == 0){
movedX = j+l;
movedY = i+k;
}
}
}
break;
case 3:
for(int k = 1; k>=-1; k–){
for(int l = -1; l=-1; k–){
for(int l = 1; l>=-1; l–){
if(SampleRPG01.map[i+k][j+l] == 0){
movedX = j+l;
movedY = i+k;
}
}
}
break;
*/
}
//succeesful = false;
clone[i][j] = 0;
clone[movedY][movedX] = 30;
//SampleRPG01.map[i][j] = 0;
//SampleRPG01.map[movedY][movedX] = 30;
}
}
}
}
mapUpdate(clone);
}
//
public void attackEnemy(){
for(int i =1; i<=30; i++){
for(int j = 1; j<=30; j++){
if(SampleRPG01.map[i][j] == 31){
SampleRPG01.map[i][j] = 0;
}
}
}
//Create Clone of SampleRPG01.map
cloning(SampleRPG01.map);
for(int i = 1; i<=30; i++){
for(int j = 1; j<=30; j++){
if(SampleRPG01.map[i][j] == 30){
if(new Random().nextInt(attackFrequency) + 1 == attackFrequency){
switch(new Random().nextInt(4)+1){
case 1://上左右下
if((SampleRPG01.map[i-1][j] == 0) && (clone[i-1][j] == 0)){
burnX = j;
burnY = i-1;
}
if((SampleRPG01.map[i][j-1] == 0) && (clone[i][j-1] == 0)){
burnX = j-1;
burnY = i;
}
if((SampleRPG01.map[i][j+1] == 0) && (clone[i][j+1] == 0)){
burnX = j+1;
burnY = i;
}
if((SampleRPG01.map[i+1][j] == 0) && (clone[i+1][j] == 0)){
burnX = j;
burnY = i+1;
}
break;
case 2://下右左上
if((SampleRPG01.map[i+1][j] == 0) && (clone[i+1][j] == 0)){
burnX = j;
burnY = i+1;
}
if((SampleRPG01.map[i][j+1] == 0) && (clone[i][j+1] == 0)){
burnX = j+1;
burnY = i;
}
if((SampleRPG01.map[i-1][j] == 0) && (clone[i-1][j] == 0)){
burnX = j;
burnY = i-1;
}
if((SampleRPG01.map[i][j-1] == 0) && (clone[i][j-1] == 0)){
burnX = j-1;
burnY = i;
}
break;
case 3://左下上右
if((SampleRPG01.map[i][j-1] == 0) && (clone[i][j-1] == 0)){
burnX = j-1;
burnY = i;
}
if((SampleRPG01.map[i+1][j] == 0) && (clone[i+1][j] == 0)){
burnX = j;
burnY = i+1;
}
if((SampleRPG01.map[i-1][j] == 0) && (clone[i-1][j] == 0)){
burnX = j;
burnY = i-1;
}
if((SampleRPG01.map[i][j+1] == 0) && (clone[i][j+1] == 0)){
burnX = j+1;
burnY = i;
}
break;
case 4://右上下左
if((SampleRPG01.map[i][j+1] == 0) && (clone[i][j+1] == 0)){
burnX = j+1;
burnY = i;
}
if((SampleRPG01.map[i-1][j] == 0) && (clone[i-1][j] == 0)){
burnX = j;
burnY = i-1;
}
if((SampleRPG01.map[i+1][j] == 0) && (clone[i+1][j] == 0)){
burnX = j;
burnY = i+1;
}
if((SampleRPG01.map[i][j-1] == 0) && (clone[i][j-1] == 0)){
burnX = j-1;
burnY = i;
}
break;
}
clone[burnY][burnX] = 31;
}
}
}
}
mapUpdate(clone);
}
}
public class Map{
/*
*
* 1~10:Character
* 1:character
* 2:bubble
* 11~19:Character
* 20~29: Not set
* 30~39: Enemy
* 40~49: Not set
* 50~59: Not set
* 60~69: Not set
* 70~79: Not set
* 80~89: Wall Rickety
* 90~99: Durable Wall
*
*
* 0:Nothing
* 1: Player Character
* 2: Not set
* 3: Enemy03
* 4: Not set
* 5: Not set
* 6: Not set
* 7: Not set
* 8: Wall Rickety
* 9: Durable Wall
*
*
*
*
*
*
*
*/
public final int characterIntialPositionX01 = 15, characterIntialPositionY01 = 15;
public final int playerLife = 5;
public int[][] createMap01(int[][] map){
System.out.println(“Map:createMap()S”);
//Initialize
for(int i = 1; i<=40; i++){
for(int j = 1; j<=40; j++){
System.out.println("i:"+i+"j"+j);
map[i][j] = 0;
if((i==1) || (i==30)){
map[i][j] = 9;
}
if((j==1) || (j==30)){
map[i][j] = 9;
}
}
}
//Wall Rickety Building
for(int i = 2; i<=29; i++){
for(int j = 2; j<=29; j++){
if((i==15) || (i==16)){
map[i][j] = 8;
}
if((j==15) || (j==16)){
map[i][j] = 8;
}
}
}
//Continuation of the WallRikecty Building
int ij01 = 2;
int ij02 = 29;
for(int i = 2; i<=8; i++){
map[i][ij01] = 8;
map[i][ij02] = 8;
ij01++;
ij02–;
}
//Continuation of the WallRickety Building
int ij03 = 15;
int ij04 = 16;
for(int i = 2; i<=14; i++){
map[i][ij03] = 8;
map[i][ij04] = 8;
ij03–;
ij04++;
}
//Continuation of the WalllRickety Building
int ij05 = 2;
int ij06 = 29;
for(int i = 17; i<=29; i++){
map[i][ij05] = 8;
map[i][ij06] = 8;
ij05++;
ij06–;
}
//Continuation of the WallRickety Bulding
int ij07 = 8;
int ij08 = 23;
for(int i = 23; i<=29; i++){
map[i][ij07] = 8;
map[i][ij08] = 8;
ij07–;
ij08++;
}
for(int i = 15; i<=16; i++){
for(int j = 15; j<=16; j++){
map[i][j] = 0;
}
}
return map;
}
}