Hi,
I'm back again with another question, sorry. When I try to compile my EnemyTank class, it gives the following error: "Constructor EnemyTank in class EnemyTank cannot be applied to given types
required: boolean
found: no arguments
reason: actual and formal argument lists differ in length
Code for EnemyTank class:
Error concerning lines 28-33.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) import java.awt.Color; import java.lang.Object; import java.lang.Class; import java.util.List; import java.awt.Point; public class EnemyTank extends Vehicle implements LandUnit { private static GreenfootImage base = new GreenfootImage( "TankBase.png" ); private static GreenfootImage sBase = new GreenfootImage( "STankBase.png" ); private static GreenfootImage xplosion = new GreenfootImage( "atomic_bomb.png" ); private static final int ROTATION_SPEED = 1 ; private static final double ACCELERATION = . 05 ; private static final double MAX_SPEED = 2 ; private TankGun gun; private boolean large; private TankTracks tracks; private boolean big; private GreenfootImage image1; private GreenfootImage image2; private GreenfootImage image3; private GreenfootImage background; private boolean Startgame = false ; private boolean clicked = false ; public EnemyTank( boolean big) { setImage(big ? sBase : base); large = big; gun = new TankGun(big); } public void act() { super .act(); if (tracks == null || tracks.getWorld() == null || Math.sqrt(Math.pow(tracks.getX() - getX(), 2 ) + Math.pow(tracks.getY() - getY(), 2 )) > (large ? 6 : 4 )) { tracks = new TankTracks(getRotation() + (speed > 0 ? 0 : 180 ), large); getWorld().addObject(tracks, getX(), getY()); } moveAround(); lookForObject(); RandomMove(); } public boolean canSee(Class clss) { Actor actor = getOneObjectAtOffset( 0 , 0 , clss); return actor != null ; } public void rotate( int r) { super .rotate(r); gun.setRotation(gun.getRotation() + r); } public void setLocation( int x, int y) { super .setLocation(x, y); gun.setLocation(x, y); } public void addedToWorld(World world) { super .addedToWorld(world); world.addObject(gun, getX(), getY()); } public boolean isLarge() { return large; } ...... } |