我制作了简单的Android游戏,我在我的设备上测试了游戏(三星Core Prime与Android 5.1.1 - 发布时没有任何问题,三星J5与Android 6.0一样 - 有一些问题,但我解决了它在我的清单中添加: android:largeHeap =“true”。
但当我将游戏发送到其他设备(使用相同的Android版本)时,游戏未启动。
这是我的清单:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.thebirdwithclipedwings"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="16"
android:targetSdkVersion="25" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme"
android:hardwareAccelerated="false"
android:largeHeap="true" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter android:label="@string/launcher_name">
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
是的,这是真的,应用程序崩溃了。在添加之前:android:largeHeap =“true”,我有这个错误:
FATAL EXCEPTION: main 04-30 23:32:00.379: E/AndroidRuntime(3547): Process:
com.example.thebirdwithclipedwings, PID: 3547 04-30 23:32:00.379:
E/AndroidRuntime(3547): java.lang.OutOfMemoryError: Failed to allocate a
7837520 byte allocation with 3789816 free bytes and 3MB until OOM 04-30
23:32:00.379: E/AndroidRuntime(3547):
at dalvik.system.VMRuntime.newNonMovableArray(Native Method) 04-30
23:32:00.379: E/AndroidRuntime(3547):
at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method) 04-30
23:32:00.379: E/AndroidRuntime(3547):
at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:856) 04-30
23:32:00.379: E/AndroidRuntime(3547):
at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:675) 04-
30 23:32:00.379: E/AndroidRuntime(3547):
at android.graphics.BitmapFactory.decodeResource(BitmapFactory.java:703) 04-
30 23:32:00.379: E/AndroidRuntime(3547):
at android.graphics.BitmapFactory.decodeResource(BitmapFactory.java:733) 04-
30 23:32:00.379: E/AndroidRuntime(3547):
at com.example.thebirdwithclipedwings.Pohyb.<init>(Pohyb.java:204) 04-30
23:32:00.379: E/AndroidRuntime(3547):
at com.example.thebirdwithclipedwings.MainActivity.onCreate(MainActivity.java:32)
04-30 23:32:00.379: E/AndroidRuntime(3547):
at android.app.Activity.performCreate(Activity.java:6877) 04-30
23:32:00.379: E/AndroidRuntime(3547):
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136) 04-
30 23:32:00.379: E/AndroidRuntime(3547):
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3209) 04-30
23:32:00.379: E/AndroidRuntime(3547):
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3352)
04-30 23:32:00.379: E/AndroidRuntime(3547):
at android.app.ActivityThread.access$1100(ActivityThread.java:223) 04-30
23:32:00.379: E/AndroidRuntime(3547):
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1797) 04-
我在游戏循环之前播放了一些音乐(使用 mediaPlayer.start()),虽然游戏崩溃了,但音乐会播放。
你知道吗?谢谢!答案 0 :(得分:0)
这是一个很长的业余代码:
@SuppressLint("WrongCall")
public class Pohyb extends SurfaceView{
private Bitmap hrac, svet, klip, klip2, klip3, klip4, player, mrak, rak, ak, k, s,nuzky, nuzkyb, star, kamen, rock, scissors;
private Bitmap nu, nu2, nu3, nu4, nu5, nu6, nu7, nu8, nu9, nu10, nu11, nu12, nu13, nu14, nu15, nu16, nu17, nu18, nu19;
private Bitmap nuze1, nuze2, nuze3, nuze4, nuze5;
private Bitmap muc1, muc2, muc3, muc4, muc5, muc6, muc7, muc8, muc9;
private SurfaceHolder holder;
private Vlakno v;
private SoundPool zvuky;
private int zvukM;
private int msprite = 6;
MediaPlayer mediaPlayer;
int svetXSize, svetYSize;
private int xSpeed = 1, ySpeed = 1, zSpeed = 0;
private int xKoeficient = 3;
private int xSize = 180 ,ySize = (int) (xKoeficient*xSize);
private int realXSize = xSize, realYSize = ySize;
private int citacX, citacY;
private int x = 100;
private int y = 100;
private int start = 0;
private int cisloHrace = 1;
Random r = new Random();
private int xMrak = 100;
private int xRak = 200;
private int xAk = 300;
private int xK = 400;
private int rychlost;
private float rKoeficient = 6;
private int biggest, smallest;
private int p, l;
private int yStart;
public boolean hra = false;
public boolean akce = false;
public boolean O = false;
private boolean promnenne = true;
private boolean ohajo = false;
private boolean ohajo2 = true;
private boolean strih = false;
private boolean strihKontrola;
private boolean dotykKamene = false;
private boolean limbus;
private boolean akt;
private boolean zobrazeniNuzek;
private boolean rovnaSeDve;
private boolean Klara;
private boolean prepinacNuzek;
private boolean zakaz;
private boolean zivyMrtvy;
private boolean playOrDie;
private boolean napis;
private boolean potvrzeniStrihu;
private float dX, dY;
private float deltaX, deltaY;
private int xz, yz;
private int kasa;
private int xStar, yStar;
private int dieKatzeStitzi;
private int rollingStones;
private float vyska = 543;
private int ptakuvStredX;
private int ptakuvStredY;
private int rockY;
private int scissorsY;
private int napisPocet;
private int konecneKonec;
private String pad = "STONES:";
public Pohyb(Context context) {
super(context);
v = new Vlakno(this);
holder = getHolder();
holder.addCallback(new SurfaceHolder.Callback() {
@Override
public void surfaceDestroyed(SurfaceHolder holder) {
boolean konekt = true;
v.setRunning(false);
while (konekt){
try{
v.join();
konekt = false;
} catch (InterruptedException e) {
}
}
}
@Override
public void surfaceCreated(SurfaceHolder holder) {
v.setRunning(true);
v.start();
}
@Override
public void surfaceChanged(SurfaceHolder holder, int format,
int width, int height) {
}
}
)
;
mediaPlayer = MediaPlayer.create(context, R.raw.ptacek_audio_format_01);
mediaPlayer.start();
mediaPlayer.setLooping(true);
svet = BitmapFactory.decodeResource(getResources(), R.drawable.pozadi_01_960_540);
player = BitmapFactory.decodeResource(getResources(), R.drawable.ptak_02);
klip2 = BitmapFactory.decodeResource(getResources(), R.drawable.klip_02);
klip3 = BitmapFactory.decodeResource(getResources(), R.drawable.klip_03);
klip4 = BitmapFactory.decodeResource(getResources(), R.drawable.klip_04);
s = BitmapFactory.decodeResource(getResources(), R.drawable.an_strih_01);
star = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_01);
nu = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_01);
nu2 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_02);
nu3 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_03);
nu4 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_04);
nu5 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_05);
nu6 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_06);
nu7 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_07);
nu8 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_08);
nu9 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_09);
nu10 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_10);
nu11= BitmapFactory.decodeResource(getResources(), R.drawable.nuze_11);
nu12 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_12);
nu13 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_13);
nu14 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_14);
nu15 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_15);
nu16 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_16);
nu17 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_17);
nu18 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_18);
nu19 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_19);
nu19 = BitmapFactory.decodeResource(getResources(), R.drawable.nuze_19);
nuze1 = BitmapFactory.decodeResource(getResources(), R.drawable.nuzky_01);
nuze2 = BitmapFactory.decodeResource(getResources(), R.drawable.nuzky_02);
nuze3 = BitmapFactory.decodeResource(getResources(), R.drawable.nuzky_03);
nuze4 = BitmapFactory.decodeResource(getResources(), R.drawable.nuzky_04);
nuze5 = BitmapFactory.decodeResource(getResources(), R.drawable.nuzky_05);
muc1 = BitmapFactory.decodeResource(getResources(), R.drawable.a_01);
muc2 = BitmapFactory.decodeResource(getResources(), R.drawable.a_02);
muc3 = BitmapFactory.decodeResource(getResources(), R.drawable.a_03);
muc4 = BitmapFactory.decodeResource(getResources(), R.drawable.a_04);
muc5 = BitmapFactory.decodeResource(getResources(), R.drawable.a_05);
muc6 = BitmapFactory.decodeResource(getResources(), R.drawable.a_06);
muc7 = BitmapFactory.decodeResource(getResources(), R.drawable.a_07);
muc8 = BitmapFactory.decodeResource(getResources(), R.drawable.a_08);
muc9 = BitmapFactory.decodeResource(getResources(), R.drawable.a_09);
scissors = BitmapFactory.decodeResource(getResources(), R.drawable.kopie_01);
rock = BitmapFactory.decodeResource(getResources(), R.drawable.kamen_01);
hrac = player;
mediaPlayer = MediaPlayer.create(context, R.raw.ptacek_audio_format_01);
mediaPlayer.start();
mediaPlayer.setLooping(true);
klip = BitmapFactory.decodeResource(getResources(), R.drawable.klip_01);
}
Nuzky n = new Nuzky();
Paint paint = new Paint();
DecimalFormat zaokrouhli = new DecimalFormat("#.####");
Kamen kam = new Kamen();
Mrak m = new Mrak();
Mrak m2 = new Mrak();
Mrak m3 = new Mrak();
Mrak m4 = new Mrak();
/////////////////////////////////////////////////////////////
@SuppressLint("DrawAll ocation")
@Override
protected void onDraw(Canvas canvas) {
canvas.drawBitmap(svet, 0, 0, null);
mrak = BitmapFactory.decodeResource(getResources(), R.drawable.mrak_01);
rak = mrak;
ak = mrak;
k = mrak;
nuzky = BitmapFactory.decodeResource(getResources(), R.drawable.nuzky_01);
kamen = BitmapFactory.decodeResource(getResources(), R.drawable.kamen_01);
prom();
if(O == true){
hrac = klip;
//setVse();
rKoeficient =(float) (((int)(realXSize - xSize) * 0.2) + 3);
rKoeficient += 0.01;
vyska = (float) (vyska - (0.01 * (rKoeficient*rKoeficient)));
//vyska = (int)(vyska);
Log.v("abc", 0.01 * rKoeficient +"");
nacitac(akce);
deltaX =((dX - (xSize/2)) - (x ));
deltaY =((dY - ((3*xSize)/2)) - (y));
forllover();
if(hra == true){
}else if(hra == false){
}
dotykNuzek();
n.velikost((int)rKoeficient, limbus, strih, rovnaSeDve);
rovnaSeDve = n.rsd;
kam.velikost((int)rKoeficient);
m.rozmery((int)rKoeficient);
m.vetsimensi();
m2.rozmery((int)rKoeficient);
m2.vetsimensi();
m3.rozmery((int)rKoeficient);
m3.vetsimensi();
m4.rozmery((int)rKoeficient);
m4.vetsimensi();
dotykKamene();
nuzkyAnim();
//strihani();
mrak = Bitmap.createScaledBitmap(mrak, m.size, m.size, true);
rak = Bitmap.createScaledBitmap(rak, m2.size, m2.size, true);
ak = Bitmap.createScaledBitmap(ak, m3.size, m3.size, true);
k =Bitmap.createScaledBitmap(k, m4.size, m4.size, true);
nuzky = Bitmap.createScaledBitmap(nuzky,n.size, n.size,true);
kamen = Bitmap.createScaledBitmap(kamen,kam.size, kam.size,true);
canvas.drawBitmap(mrak, m.x, m.y, null);
canvas.drawBitmap(rak, m2.x, m2.y, null);
canvas.drawBitmap(ak, m3.x, m3.y, null);
canvas.drawBitmap(k, m4.x, m4.y, null);
canvas.drawBitmap(nuzky, n.x, n.y, null);
if(dotykKamene == false){
canvas.drawBitmap(kamen, kam.x, kam.y, null);
}else if(dotykKamene == true){
if(kam.size == 2){
dotykKamene = false;
}
}
canvas.save();
canvas.rotate(-90, 30 , svetYSize);
paint.setTextSize(40);
paint.setTypeface(Typeface.create("Arial",Typeface.BOLD));
paint.setColor(Color.RED);
canvas.drawText(pad + " " + (rollingStones + "") , 30, svetYSize, paint);
canvas.restore();
canvas.save();
canvas.rotate(-90, 60 , svetYSize);
paint.setTextSize(40);
paint.setTypeface(Typeface.create("Arial",Typeface.ITALIC));
paint.setColor(Color.RED);
canvas.drawText(( Math.round(vyska) + "") + "m", 60, svetYSize, paint);
canvas.restore();
}else if(O == false){
}
hrac = Bitmap.createScaledBitmap(hrac, xSize, ySize, true);
canvas.drawBitmap(hrac, x, y, null);
if(zobrazeniNuzek == true){
if(scissorsY > svetYSize - (int)(realYSize/1.8)){
scissorsY -= 5;
}else{
canvas.save();
canvas.rotate(-90, x - realXSize/2, svetYSize - (int)(realYSize/1.8) + (int)(scissors.getHeight() * 0.8));
paint.setTextSize(60);
paint.setTypeface(Typeface.create("Arial",Typeface.BOLD));
paint.setColor(Color.BLACK);
canvas.drawText("SCISSORS", x - realXSize/2, svetYSize - (int)(realYSize/1.8) + (int)(scissors.getHeight() * 0.8), paint);
if(Klara == false && prepinacNuzek == true){
try {
TimeUnit.SECONDS.sleep(2);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Klara = true;
}
prepinacNuzek = true;
canvas.restore();
}
if(rockY < 10){
rockY += 5;
}else{
canvas.save();
canvas.rotate(-90, x + svetXSize/5 - x/4 , rock.getHeight() + 10);
paint.setTextSize(60);
paint.setTypeface(Typeface.create("Arial",Typeface.BOLD));
paint.setColor(Color.BLACK);
canvas.drawText("ROCK", x + svetXSize/5 - x/4, rock.getHeight() + 10, paint);
canvas.restore();
}
canvas.drawBitmap(scissors, x - realXSize/2, scissorsY, null);
canvas.drawBitmap(rock, x + svetXSize/5, rockY, null);
ptakuvStredX = svetXSize/2 ;
ptakuvStredY = svetYSize/2 ;
dX = ptakuvStredX+(xSize/4);
dY = ptakuvStredY;
deltaX =((dX - (xSize/2)) - (x ));
deltaY =((dY - ((3*xSize)/2)) - (y));
forllover();
rollingStones = 0;
canvas.save();
canvas.rotate(-90, x - x/4 , y + (int)(ySize * 0.6));
paint.setTextSize(60);
paint.setColor(Color.BLACK);
paint.setTypeface(Typeface.create("Arial",Typeface.BOLD));
if(xz == 0 && yz == 0){
canvas.drawText("PAPER", x - x/4, y +(int)(ySize * 0.6), paint);
}
canvas.restore();
if(Klara == true){
canvas.save();
canvas.rotate(-90, 100, 200); // trim
paint.setTextSize(120);
paint.setColor(Color.BLACK);
paint.setTypeface(Typeface.create("Arial",Typeface.BOLD));
canvas.drawText("GO", 100, 200, paint);
zakaz = false;
canvas.restore();
}
}
if(ohajo2 == true){
star = Bitmap.createScaledBitmap(star, (int)(1.5*svetXSize), (int) (1.5*svetXSize), true);
carodejnice();
canvas.drawBitmap(star,(int)(svetXSize*-0.25), yStart, null);
}else if(ohajo2 == false && limbus == false){
if(yStart< svetYSize){
yStart += 10;
promeny();
canvas.drawBitmap(star,(int)(svetXSize*-0.25), yStart, null);
}
}
if(playOrDie == true){
playOrDie();
}
if(vyska <= 0){
canvas.drawColor(Color.argb(255, 0, 0, 0));
konecneKonec += 1;
if(konecneKonec > 30 && konecneKonec < 60 ){
paint.setARGB(200, 254, 0, 0);
paint.setTextAlign(Align.CENTER);
paint.setTextSize(80);
canvas.rotate(-90, canvas.getWidth()/2, canvas.getHeight()/2 );
canvas.drawText("2", canvas.getWidth()/2, canvas.getHeight()/2, paint);
}else if(konecneKonec > 60 && konecneKonec < 100){
paint.setARGB(200, 254, 0, 0);
paint.setTextAlign(Align.CENTER);
paint.setTextSize(80);
canvas.rotate(-90, canvas.getWidth()/2, canvas.getHeight()/2 );
canvas.drawText("1", canvas.getWidth()/2, canvas.getHeight()/2, paint);
}else if(konecneKonec > 100 && konecneKonec < 200){
paint.setARGB(200, 254, 0, 0);
paint.setTextAlign(Align.CENTER);
paint.setTextSize(80);
canvas.rotate(-90, canvas.getWidth()/2, canvas.getHeight()/2 );
canvas.drawText("TO BE CONTINUED", canvas.getWidth()/2, canvas.getHeight()/2, paint);
}else if(konecneKonec == 250){
android.os.Process.killProcess(android.os.Process.myPid());
}
}
///////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////
}
public boolean onTouchEvent(MotionEvent dej){
switch(dej.getAction()){
case MotionEvent.ACTION_DOWN:
dX = (dej.getX());
dY = (dej.getY());
ohajo = true;
hra = true;
if(hra == false){
}else if(hra == true){
}
if(O == true){
akce = true;
}
return true;
}
switch(dej.getAction()){
case MotionEvent.ACTION_UP:
hra = false;
akce = false;
carodejnice();
if(limbus == true && zakaz != true){
rockY = - rock.getHeight();
scissorsY = svetYSize;
prepinacNuzek = false;
Klara = false;
nahoda(rollingStones, n.pocetStrihu);
playOrDie = true;
//O = true;
//zobrazeniNuzek = false;
//limbus = false;
}
return true;
}
invalidate();
return true;
}
public void nacitac(boolean upAndDown){
if(upAndDown == true && xSize > smallest){
xSize -= 2;
ySize -= 3 * 2;
x += 1;
y += 3;
}else if(upAndDown == false && xSize < biggest){
xSize += 2;
ySize += 3 * 2;
x -= 1;
y -= 3;
}
}
public void promeny(){
start += 1;
if(start > 20){
start = 0;
}
if(start == 5){
hrac = klip;
}else if(start == 10){
hrac = klip2;
}else if(start == 15){
hrac = klip3;
}else if(start == 20){
hrac = klip4;
}
}
public void forllover(){
xz = (int) ((deltaX/120) * rKoeficient);
yz = (int) ((deltaY/200) * rKoeficient);
x += xz;
y += yz;
}
public void prom(){
if(promnenne == true){
svetXSize = getWidth();
svetYSize = getHeight();
xSize = svetXSize/8 * 3;
ySize = (int) (xKoeficient*xSize);
realXSize = xSize;
realYSize = ySize;
x = svetXSize/2 - (xSize/2);
y = svetYSize/2 - (ySize/2);
p = svetXSize/2;
l = svetYSize/2;
yStart = (int)(svetYSize/3);
xMrak = (svetXSize/4) - (svetXSize/8);
xRak = 2*(svetXSize/4) - (svetXSize/8);
xAk = 3*(svetXSize/4) - (svetXSize/8);
xK = 4*(svetXSize/4) - (svetXSize/8) ;
ptakuvStredX = svetXSize/2 - xSize/2;
ptakuvStredY = svetYSize/2 - ySize/2;
smallest = (svetXSize/6) ;
biggest = svetXSize/8 * 3;
rock =Bitmap.createScaledBitmap(rock, realXSize, realXSize, true);
scissors = k =Bitmap.createScaledBitmap(scissors,2*realXSize, 2*realXSize, true);
potvrzeniStrihu = false;
rockY = - rock.getHeight();
scissorsY = svetYSize;
n.getit(svetXSize, svetYSize);
m.zisk(svetXSize, svetYSize);
m2.zisk(svetXSize, svetYSize);
m3.zisk(svetXSize, svetYSize);
m4.zisk(svetXSize, svetYSize);
kam.getit(svetXSize, svetYSize);
promnenne = false;
}
}
public void carodejnice(){
if(ohajo == true && ohajo2 == true ){
kasa +=1;
switch(kasa){
case 1: star = nu;
star = Bitmap.createScaledBitmap(star, (int)(1.5*svetXSize), (int) (1.5*svetXSize), true);
break;
case 2: star = nu3;
star = Bitmap.createScaledBitmap(star, (int)(1.5*svetXSize), (int) (1.5*svetXSize), true);
break;
case 3: star = nu15;
star = Bitmap.createScaledBitmap(star, (int)(1.5*svetXSize), (int) (1.5*svetXSize), true);
hrac = klip;
promeny();
break;
case 4: star = nu9;
star = Bitmap.createScaledBitmap(star, (int)(1.5*svetXSize), (int) (1.5*svetXSize), true);
hrac = klip2;
break;
case 5: star = nu14;
star = Bitmap.createScaledBitmap(star, (int)(1.5*svetXSize), (int) (1.5*svetXSize), true);
hrac = klip3;
break;
case 6: star = nu19;
star = Bitmap.createScaledBitmap(star, (int)(1.5*svetXSize), (int) (1.5*svetXSize), true);
hrac = klip4;
break;
case 7: star = nu7;
star = Bitmap.createScaledBitmap(star, (int)(1.5*svetXSize), (int) (1.5*svetXSize), true);
break;
case 8: star = nu6;
star = Bitmap.createScaledBitmap(star, (int)(1.5*svetXSize), (int) (1.5*svetXSize), true);
hrac = klip2;
break;
case 9: star = nu5;
star = Bitmap.createScaledBitmap(star, (int)(1.5*svetXSize), (int) (1.5*svetXSize), true);
hrac = klip3;
break;
case 10: star = nu4;
star = Bitmap.createScaledBitmap(star, (int)(1.5*svetXSize), (int) (1.5*svetXSize), true);
hrac = klip4;
break;
case 11: star = nu3;
star = Bitmap.createScaledBitmap(star, (int)(1.5*svetXSize), (int) (1.5*svetXSize), true);
hrac = klip2;
break;
case 12: star = nu2;
star = Bitmap.createScaledBitmap(star, (int)(1.5*svetXSize), (int) (1.5*svetXSize), true);
hrac = klip3;
break;
case 13: star = nu;
star = Bitmap.createScaledBitmap(star, (int)(1.5*svetXSize), (int) (1.5*svetXSize), true);
hrac = klip;
kasa = 0;
O = true;
ohajo = false;
ohajo2 = false;
break;
}
}
}
public void nuzkyAnim(){
if(n.size == 2){
strihKontrola = false;
}
if(n.size > 4*xSize && strihKontrola == false){
strih = true;
strihKontrola = true;
}
if(strih == true){
dieKatzeStitzi += 1;
switch(dieKatzeStitzi){
case 1: nuzky = nuze1;
break;
case 2: nuzky = nuze2;
break;
case 3: nuzky = nuze3;
break;
case 4: nuzky = nuze4;
break;
case 5: nuzky = nuze5;
strihani();
break;
case 6: nuzky = nuze4;
break;
case 7: nuzky = nuze3;
break;
case 8: nuzky = nuze2;
break;
case 9: nuzky = nuze1;
strih = false;
dieKatzeStitzi = 0;
rovnaSeDve = true;
potvrzeniStrihu = true;
break;
}
}
}
public void dotykNuzek(){
int vrsekN = n.y + (int)(0.2 * n.size);
int spodekN = n.y + (int)(0.8 * n.size);
int pravoN = n.x + (int)(n.size * 0.25);
int levoN = n.x + (int)(n.size * 0.75);
int yT = y + (int)(ySize * 0.2);
int yD = y + (int)(ySize * 0.8);
if((x) > pravoN && (x) < levoN && yT > vrsekN && yT < spodekN ){
limbus = true;
}
if((x+xSize) > pravoN && (x+xSize) < levoN && yT > vrsekN && yT < spodekN ){
limbus = true;
}
if((x) > pravoN && (x) < levoN && yD > vrsekN && yD < spodekN ){
limbus = true;
}
if((x+xSize) > pravoN && (x+xSize) < levoN && yD > vrsekN && yD < spodekN ){
limbus = true;
}
}
public void dotykKamene(){
if(x > kam.x && x < (kam.x + kam.size) && (y + (ySize/2)) > kam.y && (y + (ySize/2)) < (kam.y + kam.size) ){
if(dotykKamene == false){
rollingStones += 1;
dotykKamene = true;
}
}
}
public void strihani(){
if(limbus == true){
zakaz = true;
zobrazeniNuzek = true;
n.size = 2;
strihKontrola = false;
O = false;
potvrzeniStrihu = false;
}
}
public void nahoda(int kameny, int nuzky){
Random ran = new Random();
if(kameny >= nuzky/2){
zivyMrtvy = true;
}else{
zivyMrtvy = false;
}
}
public void playOrDie(){
if(zivyMrtvy == true){
n.pocetStrihu = 0;
O = true;
zobrazeniNuzek = false;
limbus = false;
playOrDie = false;
}else if(zivyMrtvy == false){
zobrazeniNuzek = false;
napisPocet += 2;
switch(napisPocet){
case 10: hrac = muc1;
break;
case 20: hrac = muc2;
break;
case 30: hrac = muc3;
break;
case 40: hrac = muc4;
break;
case 50: hrac = muc5;
break;
case 60: hrac = muc6;
break;
case 70: hrac = muc7;
break;
case 80: hrac = muc8;
break;
case 90: hrac = muc9;
napis = false;
break;
case 180: n.pocetStrihu = 0;
prom();
hra = false;
akce = false;
O = false;
promnenne = true;
ohajo = false;
ohajo2 = true;
strih = false;
strihKontrola = false;
dotykKamene = false;
limbus = false;
akt = false;
zobrazeniNuzek = false;
rovnaSeDve = false;
Klara = false;
prepinacNuzek = false;
zakaz = false;
zivyMrtvy = false;
hrac = player;
vyska = 543;
napisPocet = 0;
playOrDie = false;
potvrzeniStrihu = false;
break;
}
}
}
}