Forum zamknięte. Zapraszamy do grupy na Facebooku
Odpowiedz 
 
Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
Gra (typu: moja pierwsza aplikacja)
05-05-2014, 06:05 PM (Ten post był ostatnio modyfikowany: 05-05-2014 07:31 PM przez lolo.)
Post: #1
Gra (typu: moja pierwsza aplikacja)
Witam, wreszcie udało mi się ukończyć mój pierwszy program (stąd też trochę bałaganu w wielu miejscach kodu). Pod spodem zamieszczam fragment jednej z metod jednej z klas i timer (na których opiera się klasa uruchamiana podczas spotkania przeciwnika - battlePanel). Cały kod ciężko by mi było tu wcisnąć (4k+ linii kodu). Grę tą pisałem przede wszystkim po to aby utrwalić to czego się nauczyłem z tego kursu więc rozumiem że (przynajmniej jako forma rozrywki) jest trochę rozczarowująca. W załączniku 'Gra' znajduje się .jar w którym można ją od razu uruchomić a w załączniku 'Kod' jest cały folder z workspace'a eclipsa. Liczę na konstruktywną i wyrozumiałą krytykę. (miło by mi było jakby w odpowiedzi był dołączony wycinek z pliku MyGameSaves.txt).
public void displayInv(){
///**	
		inv = "";
		if ((c == 1 || c == 2) && (listEqNrOn.size()>0 || BLamuletMQon)){
			inv += "Ekwipunek:"+nl;
			if (BLamuletMQon){
				inv += "Amulet Nekromanty [Typ: legendarny]"+nl;
				BLamuletMQ = false;
				BLamuletMQon = true;}
			for (int y=0;y<listEqNrOn.size();y++){
				int inList = listEqNrOn.get(y);
 				int toInv1 = (inList-inList%100)/100;
  				int toInv2 = (inList%100-inList%10)/10;
  				int toInv3 = inList%10;
  				
  					if (toInv3 == 0){
						inv += "Rękawice ";
					} else if (toInv3 == 1){
						inv += "Buty ";
 					} else if (toInv3 == 2){
						inv += "Hełm ";
					} else if (toInv3 == 3){
						inv += "Pancerz ";
					}
					if (toInv1 == 1){
						inv += "[Typ: lekki, ";
					} else if (toInv1 == 2){
						inv += "[Typ: ciężki, ";
					}
					if (toInv2 == 0){
						inv += "Jakość: niska]"+nl;
					} else if (toInv2 == 1){
						inv += "Jakość: dobra]"+nl;
					} else if (toInv2 == 2){
						inv += "Jakość: wysoka]"+nl;
					}
			}
			inv += nl;
		} else if (listEqNrOn.size() == 0 && c == 2){
			inv += "Ekwipunek:"+nl+"brak używanych przedmiotów"+nl;
		}
		if ((listEqNr.size()>0 && c == 1) || (listEqNr.size()>0 && c == 3)){
		inv += "Plecak:"+nl;
			for (int x=0; x<listEqNr.size();x++){
				int inList = listEqNr.get(x);
 				int toInv1 = (inList-inList%100)/100;
  				int toInv2 = (inList%100-inList%10)/10;
  				int toInv3 = inList%10;
  				
  					if (toInv3 == 0){
						inv += "Rękawice ";
					} else if (toInv3 == 1){
						inv += "Buty ";
					} else if (toInv3 == 2){
						inv += "Hełm ";
					} else if (toInv3 == 3){
						inv += "Pancerz ";
					}
					if (toInv1 == 1){
						inv += "[Typ: lekki, ";
					} else if (toInv1 == 2){
						inv += "[Typ: ciężki, ";
					}
					if (toInv2 == 0){
						inv += "Jakość: niska]"+nl;
					} else if (toInv2 == 1){
						inv += "Jakość: dobra]"+nl;
					} else if (toInv2 == 2){
						inv += "Jakość: wysoka]"+nl;
					}
			}
			inv += nl;
		} else if (listEqNr.size() == 0 && c == 3){
			inv += "Plecak:"+nl+"brak przedmiotów"+nl+nl;
		}
//*/	
		if (c == 1 || c == 4){
			int itemCounter = 0;
			for (int x=0;x<listAlchPotion.size();x++){
				int itemSize = listAlchPotion.get(x);
				itemCounter += itemSize;
			}
			if (itemCounter > 0){
				inv += "Mikstury:"+nl;
				for (int y=0;y<listAlchPotion.size();y++){
					if (y == 0 && listAlchPotion.get(0)>0){inv += "Nieznana mikstura ["+listAlchPotion.get(0)+"]"+nl;}
					if (y == 1 && listAlchPotion.get(1)>0){inv += "Mikstura Przywrócenia Zdrowia ["+listAlchPotion.get(1)+"]"+nl;}
					if (y == 2 && listAlchPotion.get(2)>0){inv += "Mikstura Przywrócenia Energii ["+listAlchPotion.get(2)+"]"+nl;}
					if (y == 3 && listAlchPotion.get(3)>0){inv += "Mikstura Przywrócenia Ataku ["+listAlchPotion.get(3)+"]"+nl;}
				}
				inv += nl;
			} else {
				if (c == 4){inv+= "Mikstury:"+nl+"brak przedmiotów"+nl+nl;}
			}
		}
		
		if (c == 1 || c == 5){
			int listAlchSum = listAlchKwiatek.size()+listAlchKorzen.size()+listAlchGlon.size()+
					listAlchKaktus.length()+2*listAlchMech.size();

		if (listAlchSum>0){
		       inv += "Torebka alchemiczna ["+listAlchSum+"/"+alchSac+"]: "+nl;
			if (listAlchKwiatek.size()>0)	{inv += "kwiatek"+" ["+listAlchKwiatek.size()+"]"+nl;} 
			if (listAlchKorzen.size()>0)	{inv += "korzen"+" ["+listAlchKorzen.size()+"]"+nl;} 
			if (listAlchGlon.size()>0)		{inv += "glon"+" ["+listAlchGlon.size()+"]"+nl;}
			if (listAlchKaktus.length()>0)	{inv += "kaktus"+" ["+listAlchKaktus.length()+"]"+nl;}
			if (listAlchMech.size()>0)		{inv += "lśniący mech"+" ["+listAlchMech.size()+"]"+nl;}	
			inv += nl;
		} else {
			if (c == 5){inv += "Alchemia:"+nl+"brak składników alchemicznych"+nl+nl;}
		}
		}
		
		if (c == 1 || c == 6){
			int itemCounter = 0;
			for (int x=0;x<listBagOther.size();x++){
				int itemSize = listBagOther.get(x);
				itemCounter += itemSize;
			}
			if (itemCounter > 0){
				inv += "Inne:"+nl;
				for (int y=0;y<listBagOther.size();y++){
					if (y == 0 && listBagOther.get(0)>0){inv += "Monety ["+listBagOther.get(0)+"]"+nl;}
					if (y == 1 && listBagOther.get(1)>0){inv += "Pusta butelka ["+listBagOther.get(1)+"]"+nl;}
					if (y == 2 && listBagOther.get(2)>0){inv += "Książka Alchemiczna ["+listBagOther.get(2)+"]"+nl;}
				}
			inv += nl;
			} else {
				if (c == 6){inv+= "Inne:"+nl+"brak przedmiotów"+nl+nl;}
			}
		}
		
		if (c == 1 || c == 7){
			
			if (listMQItems.size() > 0){
				inv += "Fabularne:"+nl;
				for (int y=0;y<listMQItems.size();y++){
					if (listMQItems.get(y) == 12){
						inv += "Zwój królewski"+nl;
						BLscrollMQ = true;
		} else if (listMQItems.get(y) == 151){inv += "Tajemnice Płomieni"+nl;}
		else if (listMQItems.get(y) == 152){inv += "Ziarno Energii"+nl;}
		else if (listMQItems.get(y) == 250){
 						inv += "Amulet Nekromanty"+nl;
 						BLamuletMQon = false;
 						BLamuletMQ = true;
 		} else {BLamuletMQ = false;}
 		}
			inv += nl;
			} else {
			if (c == 7){inv+= "Fabularne:"+nl+"brak przedmiotów"+nl+nl;}
			}
		}
	if (itemWeight > 0){inv += "Obciążenie: "+itemWeight+"/"+eqMaxWeight;}
	if (itemWeight >= eqMaxWeight){inv += nl+ "nie jesteś w stanie odpoczywać";}
		txtEq.setText(inv);
	}


final Timer timer_foeAttack = new Timer(100, new ActionListener(){
			 public void actionPerformed(ActionEvent ev){
				 
			if (distance < 4 || (distance > 9 && distance <= 12 && BLdist2)){
				 if (foeAttack < 100){
					 foeAttack += 10;
				  } else if (foeAttack >= 100){
					int myHP = Integer.parseInt(myhp.getText());
					int foeHP = Integer.parseInt(foehp.getText());
					int dmg = foeAttackPower;
			if (BLevade){dmg = foeAttackPower/2; infotxt.setText("Sukces");}
			if (!BLevade){dmg = foeAttackPower; infotxt.setText("");}
		 			myhp.setText(""+(myHP-dmg));
		 	if (foeLevel >= 5){foehp.setText(""+(foeHP+foeLevel*dmg/8));}
		 	if (foeLevel >= 6 && distance > 10){
		  				playerMoveable = -5;
		 				foeMoveable -= 1;
		  			}
					foeAttack = 0;
				 }
				 } else {
					if (foeAttack >= 10){foeAttack -= 10;}
				 }
				 foeattack.setText(""+foeAttack);
				 foeattack.setBackground(new Color(24*foeAttack/10,255-18*foeAttack/10,105-foeAttack));
				 //5*foeAttack/2,255-5*foeAttack/2,100-foeAttack
				 if (Integer.parseInt(myhp.getText()) <= 0){
					 timer_foeAttack.stop();
					 isAlive = 1;
				 }
			 }
		 });


Załączone pliki
.zip  Gra.zip (Rozmiar: 122.45 KB / Pobrań: 11)
.zip  Kod.zip (Rozmiar: 728.26 KB / Pobrań: 7)
Znajdź wszystkie posty użytkownika
Odpowiedz cytując ten post
Odpowiedz 


Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości