Hello, i need help with the Error massage. I cant fix this.
This code is in a inputmanager witch have to move Player1, but it does not work. how can i give this actor more access? is this possible?
Error Massage(getOneObbjectAtOffset(int,int,java.langg.Class<?>) has protected access in greenfoot.Actor)
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot und MouseInfo)
/**
* Ergänzen Sie hier eine Beschreibung für die Klasse InputManager.
*
* @author (Eddy Kloth)
* @version (06.12.2020)
*/
public class InputManager extends Actor
{
private int vSpeed = 0;
private int mSpeed = 6;
private int acceleration = 2;
private int jumpHeight = 30;
/**
* act
*/
public void act()
{
checkKeysP1();
checkFallP1();
}
public void checkKeysP1()
{
Player1 Playereins= getWorld().getObjects(Player1.class).get(0);
if (Greenfoot.isKeyDown("A"))
{
Playereins.setLocation(Playereins.getX()-mSpeed, Playereins.getY());
Playereins.setRotation(180);
}
else if (Greenfoot.isKeyDown("D"))
{
Playereins.setLocation(Playereins.getX()+mSpeed, Playereins.getY());
Playereins.setRotation(360);
}
else if (Greenfoot.isKeyDown("S"))
{
fallP1();
}
if (Greenfoot.isKeyDown("W"))
{
if(onGroundP1())
{
jumpP1();
}
if(getY()>(getWorld().getHeight()-10))
{
jumpP1(); //wenn es keinen boden gibt !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
}
}
}
public void checkFallP1()
{
if(onGroundP1())
{
}
else{
fallP1();
}
}
public boolean onGroundP1()
{
Player1 Playereins= getWorld().getObjects(Player1.class).get(0);
Actor unter = Playereins.getOneObjectAtOffset( 0, 30, Platform.class );
return unter != null;
}
public void jumpP1()
{
vSpeed = -jumpHeight;
fallP1();
}
public void fallP1()
{
Player1 Playereins= getWorld().getObjects(Player1.class).get(0);
Playereins.setLocation( Playereins.getX(), Playereins.getY() + vSpeed);
vSpeed = vSpeed + acceleration;
}
}