I’m making an attempt to construct this recreation the place the participant hops between quite a lot of ropes.
For now, along with my important exercise that I saved empty, I constructed two further lessons:
-
Ropes.java
, storing the coordinates of the ropes and their motion -
Participant.java
, storing the participant’s particulars
Are you able to advise me concerning the subsequent step to hitch them? As an example, the place to incorporate the “connect operate” that hyperlinks the participant to the rope in case he reaches it?
And the way would I populate the primary exercise to prepare the sport?
To additional clarify my drawback, I’ll be a part of my three actions under: the primary is the rope class; the second is participant class:
Rope class:
import android.content material.Context;
import android.graphics.Canvas;
import android.graphics.drawable.Drawable;
import android.app.Exercise;
import android.media.SoundPool;
import android.graphics.Paint;
import android.graphics.Matrix;
import android.graphics.Rect;
import android.view.GestureDetector;
import android.view.GestureDetector.SimpleOnGestureListener;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.Toast;
import java.util.Checklist;
import static androidx.core.graphics.drawable.IconCompat.getResources;
public class ROPE extends Exercise {
public Checklist<Float> ab=[,,,];
public Checklist <Float> ord;
public float speed_up=-1;
public ultimate TARZAN tarzan;
public static ultimate float WIDTH = 67;
public static ultimate float HEIGHT = 416;
public static ultimate float ROPE_DISTANCE = 50;
non-public static ultimate float SPEED = -2;
public ROPE (Context context, Checklist ab, Checklist ord, TARZAN tarzan){
this.tarzan=tarzan;
}
public void move_rope(){
for(int i=0;i<4;i++){
}
}
public void draw(Canvas canvas) {
Drawable rope= getResources().getDrawable(R.drawable.rope);
rope.draw(canvas);
}
}
Participant class:
import android.app.Exercise;
import android.content material.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.drawable.Drawable;
import android.media.SoundPool;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Matrix;
import android.graphics.Rect;
import android.view.GestureDetector;
import android.view.GestureDetector.SimpleOnGestureListener;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.Toast;
public summary class TARZAN extends Exercise implements View.OnClickListener{
non-public static ultimate int SWIPE_MIN_DISTANCE = 120;
non-public static ultimate int SWIPE_MAX_OFF_PATH = 250;
non-public static ultimate int SWIPE_THRESHOLD_VELOCITY = 200;
non-public GestureDetector gestureDetector;
View.OnTouchListener gestureListener;
non-public boolean isAlive=true;
public ultimate float Okay=20;
public ultimate int WIDTH = 44;
public ultimate int HEIGHT = 31;
non-public ultimate int BASE_COLLISION = 521 - HEIGHT - 5;
public float X;
public float Y;
public float vitesse=0;
static ultimate int gravity = -10; // fixed downward acceleration
static ultimate int flapping = 25; // upward acceleration at any time when isFlapping is true
Boolean isFlapping = false; // Is TARZAN flapping
public TARZAN(float X,float Y) {
this.X=X;
this.Y=Y;
}
public float getX () {
return X;
}
public float getY () {
return Y;
}
public boolean isAlive () {
return isAlive;
}
/**
* Kills
*/
public void kill () {
isAlive = false;
}
/**
* Set new coordinates when beginning recreation
*/
public void setGameStartPos () {
X = 90;
Y = 500;
}
class MyGestureDetector extends SimpleOnGestureListener {
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
strive {
if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH)
return false;
// proper to left swipe
if(e1.getX() - e2.getX() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
X-=Okay;
Y=
} else if (e2.getX() - e1.getX() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
X+=Okay;
Y=
}
} catch (Exception e) {
// nothing
}
return false;
}
@Override
public boolean onDown(MotionEvent e) {
return true;
}
}
public void stick_to_rope(){
}
public void draw(Canvas canvas) {
Drawable tarzan=getResources().getDrawable(R.drawable.mario);
tarzan.draw(canvas);
}
}
My Main_Activity is at the moment empty.