This site requires JavaScript, please enable it in your browser!
Greenfoot back
AngelusNeko13
AngelusNeko13 wrote ...

2016/4/17

I need to make a speedometer

AngelusNeko13 AngelusNeko13

2016/4/17

#
It's been a while since i asked for help but im on the finishing touches of Street Racer X, but now I need help on making the dial on the speedometer move like an actual speedometer, i want the dial to rotate a maximum speed and a minimum speed for the player's car, this is the coding on the dial for the speedometer
public class Red extends Actor
{
    double minSpeed = 120;
    double maxSpeed = 250;
    double minAngle = 50;
    double maxAngle = 180;

   
    public void act() 
    {
        setRotation( speedToAngle( Car.speed ) );
    }
    
    int speedToAngle(int s)
    {
        double m = ( maxAngle - minAngle ) / ( maxSpeed - minSpeed );
        double b = minAngle - m*minSpeed;
        return (int)( m*s + b );
       
    }
    

}
AngelusNeko13 AngelusNeko13

2016/4/17

#
And this is the player's car coding public class Car extends Bumpable { int spiketime = 0; int spiketimeout = 80; int missiletime = 0; int missiletimeout = 80; public static int speed = 10; boolean touchingVehicle = false; GreenfootSound backgroundMusic = new GreenfootSound("BlockOutTheWorld.mp3"); GreenfootSound backgroundMusic2 = new GreenfootSound("Engine5.wav"); GreenfootImage racerX = new GreenfootImage("RacerX.png"); GreenfootImage car1 = new GreenfootImage("1.png"); GreenfootImage car2 = new GreenfootImage("2.png"); GreenfootImage car3 = new GreenfootImage("3.png"); GreenfootImage car4 = new GreenfootImage("4.png"); GreenfootImage car5 = new GreenfootImage("5.png"); GreenfootImage car6 = new GreenfootImage("6.png"); GreenfootImage car7 = new GreenfootImage("7.png"); GreenfootImage car8 = new GreenfootImage("8.png"); GreenfootImage car9 = new GreenfootImage("9.png"); GreenfootImage car10 = new GreenfootImage("10.png"); GreenfootImage car11 = new GreenfootImage("11.png"); GreenfootImage car12 = new GreenfootImage("12.png"); GreenfootImage car13 = new GreenfootImage("13.png"); GreenfootImage car14 = new GreenfootImage("14.png"); GreenfootImage car15 = new GreenfootImage("15.png"); GreenfootImage car16 = new GreenfootImage("16.png"); GreenfootImage car17 = new GreenfootImage("17.png"); GreenfootImage car18 = new GreenfootImage("18.png"); GreenfootImage car19 = new GreenfootImage("19.png"); GreenfootImage car20 = new GreenfootImage("20.png"); GreenfootImage car21 = new GreenfootImage("21.png"); GreenfootImage car22 = new GreenfootImage("22.png"); GreenfootImage car23 = new GreenfootImage("23.png"); GreenfootImage car24 = new GreenfootImage("24.png"); GreenfootImage car25 = new GreenfootImage("25.png"); GreenfootImage car26 = new GreenfootImage("26.png"); GreenfootImage car27 = new GreenfootImage("27.png"); GreenfootImage car28 = new GreenfootImage("28.png"); GreenfootImage car29 = new GreenfootImage("29.png"); GreenfootImage car30 = new GreenfootImage("30.png"); GreenfootImage car31 = new GreenfootImage("31.png"); GreenfootImage car32 = new GreenfootImage("32.png"); GreenfootImage car33 = new GreenfootImage("33.png"); GreenfootImage car34 = new GreenfootImage("34.png"); GreenfootImage car35 = new GreenfootImage("35.png"); GreenfootImage car36 = new GreenfootImage("36.png"); GreenfootImage car37 = new GreenfootImage("37.png"); GreenfootImage car38 = new GreenfootImage("38.png"); GreenfootImage car39 = new GreenfootImage("39.png"); GreenfootImage car40 = new GreenfootImage("40.png"); GreenfootImage car41 = new GreenfootImage("41.png"); GreenfootImage car42 = new GreenfootImage("42.png"); GreenfootImage car43 = new GreenfootImage("43.png"); GreenfootImage car44 = new GreenfootImage("44.png"); GreenfootImage car45 = new GreenfootImage("45.png"); GreenfootImage car46 = new GreenfootImage("46.png"); GreenfootImage car47 = new GreenfootImage("47.png"); GreenfootImage car48 = new GreenfootImage("48.png"); GreenfootImage car49 = new GreenfootImage("49.png"); GreenfootImage car50 = new GreenfootImage("50.png"); GreenfootImage car51 = new GreenfootImage("51.png"); GreenfootImage car52 = new GreenfootImage("52.png"); GreenfootImage car53 = new GreenfootImage("53.png"); GreenfootImage car54 = new GreenfootImage("54.png"); GreenfootImage car55 = new GreenfootImage("55.png"); GreenfootImage car56 = new GreenfootImage("56.png"); GreenfootImage car57 = new GreenfootImage("57.png"); GreenfootImage car58 = new GreenfootImage("58.png"); GreenfootImage car59 = new GreenfootImage("59.png"); GreenfootImage car60 = new GreenfootImage("60.png"); GreenfootImage car61 = new GreenfootImage("61.png"); GreenfootImage car62 = new GreenfootImage("62.png"); GreenfootImage car63 = new GreenfootImage("63.png"); GreenfootImage car64 = new GreenfootImage("64.png"); GreenfootImage car65 = new GreenfootImage("65.png"); GreenfootImage car66 = new GreenfootImage("66.png"); GreenfootImage car67 = new GreenfootImage("67.png"); GreenfootImage car68 = new GreenfootImage("68.png"); GreenfootImage car69 = new GreenfootImage("69.png"); GreenfootImage car70 = new GreenfootImage("70.png"); GreenfootImage car71 = new GreenfootImage("71.png"); GreenfootImage car72 = new GreenfootImage("72.png"); GreenfootImage car73 = new GreenfootImage("73.png"); GreenfootImage car74 = new GreenfootImage("74.png"); GreenfootImage car75 = new GreenfootImage("75.png"); GreenfootImage car76 = new GreenfootImage("76.png"); GreenfootImage car77 = new GreenfootImage("77.png"); GreenfootImage car78 = new GreenfootImage("78.png"); GreenfootImage car79 = new GreenfootImage("79.png"); GreenfootImage car80 = new GreenfootImage("80.png"); GreenfootImage car81 = new GreenfootImage("81.png"); GreenfootImage car82 = new GreenfootImage("82.png"); GreenfootImage car83 = new GreenfootImage("83.png"); GreenfootImage car84 = new GreenfootImage("84.png"); GreenfootImage car85 = new GreenfootImage("85.png"); GreenfootImage car86 = new GreenfootImage("86.png"); GreenfootImage car87 = new GreenfootImage("87.png"); GreenfootImage car88 = new GreenfootImage("88.png"); GreenfootImage car89 = new GreenfootImage("89.png"); GreenfootImage car90 = new GreenfootImage("90.png"); GreenfootImage car91 = new GreenfootImage("91.png"); GreenfootImage car92 = new GreenfootImage("92.png"); GreenfootImage car93 = new GreenfootImage("93.png"); GreenfootImage car94 = new GreenfootImage("94.png"); GreenfootImage car95 = new GreenfootImage("95.png"); GreenfootImage car96 = new GreenfootImage("96.png"); GreenfootImage car97 = new GreenfootImage("97.png"); GreenfootImage car98 = new GreenfootImage("98.png"); GreenfootImage car99 = new GreenfootImage("99.png"); GreenfootImage car100 = new GreenfootImage("100.png"); GreenfootImage car101 = new GreenfootImage("101.png"); GreenfootImage cars = {racerX, car1 , car2,car3,car4, car5,car6,car7,car8, car9,car10,car11, car12, car13,car14,car15,car16, car17,car18,car19,car20, car21,car22,car23 ,car24, car25,car26,car27,car28, car29,car30,car31,car32, car33,car34,car35,car36, car37,car38,car39,car40, car41,car42,car43,car44, car45,car46,car47,car48, car49,car50,car51,car52, car53,car54,car55,car56, car57,car58,car59,car60, car61,car62,car62,car63, car64,car65,car65,car66, car67,car68,car69,car70, car71,car72,car73,car74, car75,car76,car77,car78, car79,car80,car81,car82, car83,car84,car85,car86, car87,car88,car89,car90, car91,car92,car93,car94, car95,car96,car97,car98, car99,car100,car101}; static int picID = 0; boolean menu = false; int menucount = 0; public void picRight() { if ( menucount > 0 ) return; picID++; if ( picID >= cars.length ) picID = 0; if ( picID < 0 ) picID = cars.length - 1; setImage( cars ); menucount = 20; } public void picLeft() { if ( menucount > 0 ) return; picID--; if ( picID >= cars.length ) picID = 0; if ( picID < 0 ) picID = cars.length - 1; setImage( cars ); menucount = 20; } public void addedToWorld(World w) { setImage( cars ); } /** * Act - do whatever the Car wants to do. This method is called whenever * the 'Act' or 'Run' button gets pressed in the environment. */ public void act() { if ( missiletime > 0 ) missiletime--; if ( spiketime > 0 ) spiketime--; if ( menucount > 0 ) menucount--; if ( menu ) return; setImage( cars ); backgroundMusic.playLoop(); backgroundMusic.setVolume(85); backgroundMusic2.playLoop(); backgroundMusic2.setVolume(60); World myWorld = getWorld(); CarWorld carworld = (CarWorld)myWorld; Ammo am = carworld.getAmmo(); if ( am != null ) am.setLocation(getX()+7, getY()+20); HealthBar hb = carworld.getHealthBar(); if ( hb != null ) hb.setLocation(getX()-7, getY()+20); Actor a = this.getOneIntersectingObject(Vehicle.class); if( a != null && !(a instanceof BumperCar) ) { this.getWorld().removeObject( a ); HealthBar healthbar = carworld.getHealthBar(); if (touchingVehicle == false) { healthbar.loseHealth(); touchingVehicle = true; Greenfoot.playSound("Crash.wav"); if(healthbar.health <=0) { Greenfoot.playSound("crashing.wav"); Greenfoot.playSound("TireSqueal.wav"); End e = new End(CarWorld.counter.score); Greenfoot.setWorld(e); backgroundMusic.setVolume(0); backgroundMusic2.setVolume(0); Greenfoot.playSound("Scratch.wav"); getWorld().removeObject(this); return; } } else { touchingVehicle = false; } } Actor i = this.getOneIntersectingObject(Tree.class); if( i != null) { this.getWorld().removeObject( i ); backgroundMusic.setVolume(0); backgroundMusic2.setVolume(0); Greenfoot.playSound("Fail.wav"); Greenfoot.playSound("crashing.wav"); End e = new End(CarWorld.counter.score); getWorld().removeObject(this); Greenfoot.setWorld(e); return; } setRotation(0); if(Greenfoot.isKeyDown("right")) { moveRight(); setRotation(11); } if(Greenfoot.isKeyDown("left")) { moveLeft(); setRotation(-11); } if (Greenfoot.isKeyDown("up")) { moveUp(); } if (Greenfoot.isKeyDown("down")) { moveDown(); } //CarWorld carworld = (CarWorld)getWorld(); //Ammo ammo = carworld.getAmmo(); if( am.canShoot() ) { if ( spiketime <= 0 && Greenfoot.isKeyDown("s") ) { spiketime = spiketimeout; carworld.addObject (new Spikes(), getX(), getY()+18); am.loseAmmo(); } if( missiletime <= 0 && Greenfoot.isKeyDown("d") ) { Greenfoot.playSound("Transform.wav"); missiletime = missiletimeout; carworld.addObject (new Missiles(), getX(), getY()+1); am.loseAmmo(); } } if (Greenfoot.isKeyDown("M")) { backgroundMusic.setVolume(0); } } public void moveRight() { setLocation(getX()+3, getY()); } public void moveLeft() { setLocation(getX()-3, getY()); } public void moveUp() { setLocation(getX(), getY()-2); int speed = 15; } public void moveDown() { setLocation(getX(), getY()+3); int speed = 5; } }
danpost danpost

2016/4/17

#
AngelusNeko13 wrote...
It's been a while since i asked for help but im on the finishing touches of Street Racer X, but now I need help on making the dial on the speedometer move like an actual speedometer, i want the dial to rotate a maximum speed and a minimum speed for the player's car, this is the coding on the dial for the speedometer
The min and max anlgles indicate that the dial would be pointing between just below 45 degrees down and to the right to, by swinging left, a horizontal position. Is this upside down, or what? Also, if the minimum speed for the car is 120, then why do you initially set the speed of the car at ten? I will presume that only one car will be in the world at any time. If not, then you will other issues.
AngelusNeko13 AngelusNeko13

2016/4/17

#
okay, thanks ill see what i can do
You need to login to post a reply.