#navi(Programming_II/14)
#contents
//*moodle [#zbf22d25]
//-https://tarkus.eva.ie.u-ryukyu.ac.jp/moo/
*Robocode [#le71eeba]
**インストール [#x0b8a762]
-Robocodeのホームページ http://robocode.sourceforge.net/
より,最新版(1.9.2.3)をダウンロードする.
#ref(robocode-1.9.2.3-setup.jar);
-ダブルクリックでインストールを行う.
 /Users/ユーザ名/robocode
を作るかと聞いてくるので,Yesで作成する.
**Robocode 起動 [#zb955ae9]
 $ cd
 $ sh robocode/robocode.sh
**Robocodeソース [#j63c6887]
-Robocode [Robot]メニュー[Editor]より,Source Editorを開く.
-[File]メニュー[New]>[Robot]で,新しいロボットファイルを開く.
 
#ref(screenshot_04.png);

で,新しいロボット(クラス)名を入れる.ここでは,MyFirstRobot
つぎに
#ref(screenshot_03.png);
により,パッケージ名を入れる.ここでは,e14をいれる.(小文字を使う)
~つぎのようなソースファイルがデフォルトで開かれる.
 ~/robocode/robots/e14/MyFirstRobot.java
で保存される.

#code(java){{
package e14;
import robocode.*;
//import java.awt.Color;

// API help : http://robocode.sourceforge.net/docs/robocode/robocode/Robot.html

/**
 * MyFirstRobot - a robot by (your name here)
 */
public class MyFirstRobot extends Robot
{
	/**
	 * run: MyFirstRobot's default behavior
	 */
	public void run() {
		// Initialization of the robot should be put here

		// After trying out your robot, try uncommenting the import at the top,
		// and the next line:

		// setColors(Color.red,Color.blue,Color.green); // body,gun,radar

		// Robot main loop
		while(true) {
			// Replace the next 4 lines with any behavior you would like
			ahead(100);
			turnGunRight(360);
			back(100);
			turnGunRight(360);
		}
	}

	/**
	 * onScannedRobot: What to do when you see another robot
	 */
	public void onScannedRobot(ScannedRobotEvent e) {
		// Replace the next line with any behavior you would like
		fire(1);
	}

	/**
	 * onHitByBullet: What to do when you're hit by a bullet
	 */
	public void onHitByBullet(HitByBulletEvent e) {
		// Replace the next line with any behavior you would like
		back(10);
	}
	
	/**
	 * onHitWall: What to do when you hit a wall
	 */
	public void onHitWall(HitWallEvent e) {
		// Replace the next line with any behavior you would like
		back(20);
	}	
}
								
}}
*ソースを読もう [#h7f82bcd]
-Robocode API
 ~/robocode/javadoc/index.html

-robotプログラムのありか.パッケージ名のディレクトリ毎に配置されています.
 ~/robocode/robots/
--サンプルプログラムは,
 ~/robocode/robots/sample/
*第1回レポート [#wf450d21]
-課題:
ロボコードに付属している以下の11種のサンプルプログラムが,
 ~/robocode/robots/sample/
以下にあります.
+各サンプルプログラムソースにコメントをつけプログラムをくわしく説明しなさい.
 Corners.java
 Crazy.java
 Fire.java
 Interactive.java
 Interactive_v2.java 
 MyFirstJuniorRobot.java
 PaintingRobot.java
 RamFire.java
 SittingDuck.java
 SpinBot.java
 Target.java
 TrackFire.java
 Tracker.java
 VelociRobot.java
 Walls.java

+各ロボットを対戦させ,各ロボットの特徴を調査しなさい.
**締め切り [#k9e3245b]
-11月4日正午
**提出先 [#xe4ce91c]
-近日アナウンスします
-koji@ie.u-ryukyu.ac.jp
//-moodle
//--https://tarkus.eva.ie.u-ryukyu.ac.jp/moo/
//-提出形式:pdfファイル(e115701.pdf)
//-提出方法:moodleでの提出(10日にmoodleの設定を行います.)
//--https://tarkus.eva.ie.u-ryukyu.ac.jp/moo/
//-提出期限:11月25日正午

#navi(Programming_II/14)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS