Difference between revisions of "Blue Shift"
Line 1: | Line 1: | ||
Named after the [[wikipedia:Doppler effect| Doppler Effect]] | Named after the [[wikipedia:Doppler effect| Doppler Effect]] | ||
+ | |||
+ | It is the same as {{OldWiki|BulletDoubling}} (Old Wiki) | ||
[[File:Blue_Shift.JPG|400px|right]] | [[File:Blue_Shift.JPG|400px|right]] | ||
The picture to the right shows a group of waves clustered together. | The picture to the right shows a group of waves clustered together. |
Revision as of 22:59, 30 July 2009
Named after the Doppler Effect
It is the same as BulletDoubling (Old Wiki)
The picture to the right shows a group of waves clustered together.
How it Works
Fire a group of bullets that reach your target at the same time, either by moving the robot, changing bullet power, or a combination of both.
Concept
Use only on stationary targets (shows concept when farther away).
package wiki;
import robocode.*;
public class BlueShift extends AdvancedRobot
{
double turns;
double time;
public void run()
{
setTurnRadarRightRadians(Double.POSITIVE_INFINITY);
}
public void onScannedRobot(ScannedRobotEvent e)
{
double absoluteBearing = e.getBearingRadians() + getHeadingRadians();
double distance = e.getDistance();
setTurnRightRadians(robocode.util.Utils.normalRelativeAngle(absoluteBearing - getGunHeadingRadians()));
turns -= getTime() - time;
time = getTime();
if (turns <= 0)
{
time = getTime();
turns = distance / 11;
setFire(3);
}
else
{
setFire((distance / turns - 20) / -3);
}
}
}
This is just a theory I had after viewing the Waves article. Please comment, add code, or expand this article.